This service is available only in Japanese-language.
gatesgarthで、ROS環境を作成しようとしています。
$ source oe-init-build-env
$ bitbake-layers layerindex-fetch meta-ros1-melodic
$ bitbake librealsense2
を実行すると、以下のエラーが発生します。
ERROR: Nothing PROVIDES 'librealsense2'
librealsense2 was skipped: Recipe is blacklisted: opengl: depends on mesa which is not available because of missing opengl or vulkan in DISTRO_FEATURES; glfw: Depends on glfw which is not available in zeus and older
conf/local.confに以下を追加してみましたが、全く変化がありません。
DISTRO_FEATURES_append = " opengl"
何が原因か、ご教授いただけたらと思います。よろしくお願いします。
yakuhito
2021/4/26 (月) 17:43
glfw のレシピの構築は有効になっていますか?
glfwも必要とされていますが、こちらのレシピを見ますとx11が必要となります。
http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-core...
sirkt0131
2021/4/26 (月) 18:53
glfwも追加してみましたが変わりませんでした
はい、glfwも追加してみましたが変わりませんでした。ちなみにros2-foxyの場合は(多少パッチの修正をしましたが)ビルドできました。差分を追ってみましたが追いきれず・・・。原因がわかりましたらご教授頂けると助かります。
yakuhito
2021/4/27 (火) 09:35
BLACKLISTへの登録を解除した場合に構築可能かどうか
meta-ros1-melodic/conf/ros-distro/include/melodic/ros-distro-recipe-blacklist.inc 内にて
PNBLACKLIST[librealsense2] ?= "${@bb.utils.contains_any('ROS_WORLD_SKIP_GROUPS', ['opengl', 'glfw'], 'opengl: depends on mesa which is not available because of missing opengl or vulkan in DISTRO_FEATURES; glfw: Depends on glfw which is not available in zeus and older', '', d)}"
と定義されているため、bitbakeの処理対象となっています。
PNBLACKLIST[librealsense2] = " "
と、設定を無効にする指定をlocal.conf 内で行えば、bitbake で各タスクは実行可能になるかと。
sirkt0131
2021/4/27 (火) 14:21
do_package_qaで以下のエラーが報告されました。
ありがとうございます。コンパイルは進みましたが、do_package_qaで以下のエラーが報告されました。
ERROR: librealsense2-2.42.0-1-r0 do_package_qa: QA Issue: non -dev/-dbg/nativesdk- package librealsense2 contains symlink .so '/usr/lib/librealsense2.so'
non -dev/-dbg/nativesdk- package librealsense2 contains symlink .so '/usr/lib/librealsense2-gl.so' [dev-so]
ros2-foxyのlibrealsense2_%25.bbappend(https://github.com/ros/meta-ros/blob/master/meta-ros2-foxy/recipes-bbapp...)に倣い、以下を追加したところ、Buildを通すことができました。
inherit ros_insane_dev_so
ありがとうございました。