パッケージのbbやbbappendを書いている時にQA Issueでエラーになることがある。 とりあえず解消出来たようなので、今回遭遇したエラーと対処をメモ。
QA Issue: userland rdepends on [package]
WARNING: QA Issue: userland rdepends on wayland, but it isn't a build dependency? [build-deps]
この例ではwaylandにビルド依存関係があるのでは?という警告。 waylandは今回引っかかったパッケージ。
回避策
bb/bbappendに以下を記述
PACKAGECONFIG += " wayland"
指摘されたパッケージをPACKAGECONFIGに追加してやる。
QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so:
ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: userland path '/work/raspberrypi2-poky-linux-gnueabi/userland/git-r4/packages-split/userland/usr/lib/libGLESv2.so' [dev-so]
開発用とかデバッグ用パッケージに必要な設定が足りないということらしい。
回避策
bb/bbappendに以下を記述
FILES_${PN}-dev += "${libdir}/libGLESv2.so \ ${libdir}/libEGL.so \ " FILES_${PN}-dbg += "${libdir}/.debug"
なので、必要なものを追加してみる。
installed-vs-shipped
ERROR: QA Issue: userland: Files/directories were installed but not shipped /usr/lib/libGLESv2.so.2.0.0 /usr/lib/libEGL.so.1.0.0 /usr/lib/libGLESv2.so.2 /usr/lib/libEGL.so.1 /usr/lib/pkgconfig /usr/lib/pkgconfig/glesv2.pc /usr/lib/pkgconfig/wayland-egl.pc /usr/lib/pkgconfig/egl.pc [installed-vs-shipped]
これはイメージとしてイントールされるけど、 sysrootへ反映されないというエラーになるだろうか。
回避策
bb/bbappendに以下を記述
FILES_${PN} += "${libdir}/pkgconfig \ ${libdir}/pkgconfig/glesv2.pc \ ${libdir}/pkgconfig/egl.pc \ ${libdir}/libGLESv2.so.2.0.0 \ ${libdir}/libEGL.so.1.0.0 \ ${libdir}/libGLESv2.so.2 \ ${libdir}/libEGL.so.1 \
提供ファイルにの一覧に追加してみる。