Le compositeur Weston x11-backend n'a pas été trouvé

2

J'ai un système intégré sur lequel je veux exécuter weston compositor pour utiliser wayland. J'ai pu créer l'application Weston et je suis allé le lancer à partir de mon système. L'erreur suivante s'est produite:

#./weston 
Date: 2016-09-02 UTC
[15:08:36.341] weston 1.5.0
               http://wayland.freedesktop.org/
               Bug reports to: https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland&component=weston&version=1.5.0
               Build: 1.4.93 configure.ac: Bump version 1.4.93 (2014-05-12 12:51:52 -0700)
[15:08:36.342] OS: Linux, 3.10.61-ltsi-d6cx, #2 SMP PREEMPT Mon Aug 8 13:16:40 CDT 2016, x86_64
[15:08:36.342] warning: XDG_RUNTIME_DIR "/tmp" is not configured
correctly.  Unix access mode must be 0700 (current mode is 777),
and must be owned by the user (current owner is UID 0).
Refer to your distribution on how to get it, or
http://www.freedesktop.org/wiki/Specifications/basedir-spec
on how to implement it.
[15:08:36.343] Starting with no config file.
[15:08:36.344] Loading module '/usr/lib/weston/x11-backend.so'
[15:08:36.344] Failed to load module: /usr/lib/weston/x11-backend.so: cannot open shared object file: No such file or directory
#

J'ai cherché la bibliothèque x11-backend.so dans tous les endroits et je ne l'ai pas trouvée. J'ai construit weston en utilisant buildroot.

Toute aide pour contourner ce problème sera appréciée.

maikelo
la source

Réponses:

1

J'ai finalement trouvé quel était le problème. Buildroot défini dans le fichier weston.mk, sous le répertoire packages, les options suivantes:

WESTON_CONF_OPT = \
    --with-dtddir=$(STAGING_DIR)/usr/share/wayland \
    --disable-egl \
    --disable-simple-egl-clients \
    --disable-xwayland \
    --disable-x11-compositor \
    --disable-drm-compositor \
    --disable-wayland-compositor \
    --disable-headless-compositor \
    --disable-weston-launch \
    --disable-colord 

Comme vous pouvez le constater, buildroot est supprimé de nombreux backends et weston-launch.

Ce que j'ai alors fait était commenter une partie de cette configuration comme suit:

WESTON_CONF_OPT = \
    --with-dtddir=$(STAGING_DIR)/usr/share/wayland \
#   --disable-egl \
#   --disable-simple-egl-clients \
#   --disable-xwayland \
#   --disable-x11-compositor \
#   --disable-drm-compositor \
#   --disable-wayland-compositor \
#   --disable-headless-compositor \
#   --disable-weston-launch \
    --disable-colord

Et puis j'ai fait

make weston-reconfigure

à un moment donné, make s'est arrêté avec une erreur car le paquet pam n'était pas installé, je l'ai donc installé:

make linux-pam

et quand cela a fini j'ai fait à nouveau

make weston-reconfigure
make weston

Et résoudre les problèmes !!!

maikelo
la source
0

Vous essayez de lancer Weston avec le backend X11, mais il semble que vous n’ayez pas compilé le backend X11. Dans tous les cas, vous ne souhaitez pas utiliser le backend X11, car le système d’affichage Wayland remplace l’ancien système Xorg. Vous voudrez lancer Weston avec le weston-launch commande, qui exécutera Weston avec le backend DRM. Voir la section Courir Weston en bas de https://wayland.freedesktop.org/building.html pour plus de détails.

samuellwn
la source
Merci pour votre commentaire. Vous avez raison, à la fin, je ne veux pas utiliser X11 avec wayand, mais je n'ai pas non plus construit weston-launch, je n'ai pas x11-backend.so. Le problème est que je ne sais pas pourquoi buildroot ne les construit pas.
maikelo