ウェイランドを使用するためにウェストンコンポジターを実行したい組み込みシステムがあります。 westonアプリをビルドして、システムから起動すると、次のエラーが発生しました。
#./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
#
私はすべての場所でライブラリx11-backend.soを探しましたが、見つかりませんでした。 buildrootを使用してwestonを構築しました。
この問題を回避するための助けをいただければ幸いです。
私はついに何が問題なのかを見つけました。パッケージディレクトリの下のweston.mkファイルに設定されたBuildrootには、次のオプションがあります。
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
ご覧のとおり、buildrootは多くのバックエンドとweston-launchから削除されています。
次に私がしたことは、その構成の一部を次のようにコメントすることでした。
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
そして、私はしました
make weston-reconfigure
ある時点で、pamパッケージがインストールされていなかったためにエラーで停止したので、次のようにインストールしました。
make linux-pam
そしてそれが終わったとき私は再びやった
make weston-reconfigure
make weston
そして問題解決!!!
X11バックエンドでWestonを起動しようとしていますが、X11バックエンドをコンパイルしていないようです。いずれにせよ、Waylandディスプレイシステムは古いXorgシステムの代わりになるため、X11バックエンドは使用したくありません。 weston-launch
コマンドを使用してWestonを起動すると、DRMバックエンドを使用してWestonが実行されます。詳細については、 https://wayland.freedesktop.org/building.html の下部にあるセクションRunning Westonを参照してください。 。