This service is available only in Japanese-language.

Qt動作環境の構築(Zedboard)

Zedboard上でQtが動作する環境を構築していますが、bitbake が通らなくて困っています。

具体的には

build/conf/local.confのIMAGE_INSTALL_appendにqtbase
build/conf/bblayers.confのBBLAYERSにmeta-qt5

をそれぞれ追加し、

bitbake core-image-minimal

を実行すると、

ERROR: The OpenGL functionality tests failed!
You might need to modify the include and library search paths by editing QMAKE_INCDIR_OPENGL[_ES2],
QMAKE_LIBDIR_OPENGL[_ES2] and QMAKE_LIBS_OPENGL[_ES2] in the mkspec for your platform.

というエラーが出て止まってしまいます。
OpenGLが有効になっていることが原因なようなのですが、もし対処方法が分かる方がいらっしゃいましたら、教えていただけませんでしょうか。
poky、meta-qt5等は全てpyroブランチを使用しています。

確認ですが、Zedboard向けのBSPレイヤーは、git://git.yoctoproject.org/meta-xilinx を -b pyro
で取得したものを使用し、
MACHINE=zedboard-zynq7
と設定して構築確認をおこなっているという理解で宜しいでしょうか?

ご返信ありがとうございます。
yakuhito様のおっしゃる通り、meta-xilinxもpyroブランチで、local.confのMACHINEはzedboard-zynq7を指定しています。

先ほど、全て -b pyro で取得したレイヤーを使用して

conf/bblayers.conf に
 meta-xillinx 及び mata-qt5 の追加

conf/local.conf に
 
  38 MACHINE ??= "qemux86"
39
40 MACHINE = "zedboard-zynq7" ← 追加

240 CONF_VERSION = "1"
241
242 IMAGE_INSTALL_append = " qtbase" ←追加
を行って、bitbake core-image-minimal を実行したところ、
特にエラーが発生することなくbuildが完了しました。

以下のエラーは、bitbake のどのtaskを実行している時に発生しておりますでしょうか?
ERROR: The OpenGL functionality tests failed!

 

お騒がせして申し訳ございません。
全ての作業をやり直したところ、bitbake core-image-minimalが通りました。

そして元のlocal.confと比較したところ、X Window Systemを使用しないため追記した
DISTRO_FEATURES_remove = " x11"
が原因であることが分かりました。
ログは下記の通りで、qtbaseのdo_configure中にエラーが出ているようです。

/build/tmp/work/cortexa9hf-neon-poky-linux-gnueabi/qtbase/5.8.0+gitAUTOINC+49dc9aa409-r0/git/config.tests/x11/xlib/xlib.cpp:40:22: fatal error: X11/Xlib.h: No such file or directory
| > #include <X11/Xlib.h>
| > ^
| > compilation terminated.
| > Makefile:180: recipe for target 'xlib.o' failed
| > make: *** [xlib.o] Error 1
| test config.gui.tests.xlib FAILED
| Done running configuration tests.
途中省略
| ERROR: Feature 'opengl-desktop' was enabled, but the pre-condition '(config.win32 && !config.winrt && !features.opengles2 && (config.msvc || libs.opengl))
| || (!config.watchos && !config.win32 && libs.opengl)' failed.
|
| ERROR: The OpenGL functionality tests failed!
| You might need to modify the include and library search paths by editing QMAKE_INCDIR_OPENGL[_ES2],
| QMAKE_LIBDIR_OPENGL[_ES2] and QMAKE_LIBS_OPENGL[_ES2] in the mkspec for your platform.

なぜ
DISTRO_FEATURES_remove = " x11"
が不味いのか、教えていただけるとありがたいです。

標準の設定の場合、Desktop OpenGL(x11上で動作)のみ生成する設定となっているようです。
そのため、DISTRO_FEATURES_remove = " x11" を指定した場合、OpenGLが生成されず、
EGLやOpenGL ESも存在しないため、build不能となります。

教えてくださり、ありがとうございます。

Qtでtslibを使用するために、local.confに
PACKAGECONFIG_DISTRO_append_pn = " tslib"
を追記したところ、やはり
meta-qt5/recipes-qt/qt5/qtbase_git.bb:do_configure

ERROR: The OpenGL functionality tests failed!
という同じエラーが出てしまいます。回避方法があれば良いのですが。

同一のconf/local.confを使用してcore-image-satoのbuildを実行した場合は、qtbaseの構築に成功しています。

core-image-minimulを指定して、tslibを指定した場合は、qtbaseのconfig実行時に不足するものが
あって、構築に失敗するようですね。

情報ありがとうございます。
本当ですね。core-image-satoだとbitbakeが通りました。
core-image-satoとcore-image-minimalのパッケージの差分を確認してみます。