Imx8 multilib Yocto build fails

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Imx8 multilib Yocto build fails

3,824 Views
gabor_jakli
Contributor I

Dear all

I'm pretty new to build yocto project. Therefore I carefully followed the instructions in the i.MX Yocto Project User's Guide (Rev. L4.14.98-2.0.0_ga, 04/2019) about setting up the environment and use the correct Distro and machine config for imx8m quad eval kit.

I managed to complie the 'fsl-image-qt5-validation-imx' image using DISTRO="fsl-imx-wayland" MACHINE="imx8mqevk".

However I realized that I need 32bit libs aswell since not all my applications can be compiled to 64bit environment. So I followed the instructions to configure the multilib environment.

But unfornutely I ran into a problem

ERROR: rapidjson-1.1.0+gitAUTOINC+e5635fb27f-r0 do_package: QA Issue: rapidjson: Files/directories were installed but not shipped in any package:
/usr/lib
/usr/lib/cmake
/usr/lib/pkgconfig
/usr/lib/cmake/RapidJSON
/usr/lib/cmake/RapidJSON/RapidJSONConfig.cmake
/usr/lib/cmake/RapidJSON/RapidJSONConfigVersion.cmake
/usr/lib/pkgconfig/RapidJSON.pc
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
rapidjson: 7 installed and not shipped files. [installed-vs-shipped]
ERROR: rapidjson-1.1.0+gitAUTOINC+e5635fb27f-r0 do_package: Fatal QA errors found, failing task.
ERROR: rapidjson-1.1.0+gitAUTOINC+e5635fb27f-r0 do_package: Function failed: do_package
ERROR: Logfile of failure stored in: /home/nng/imx-yocto-bsp/build-wayland/tmp/work/aarch64-poky-linux/rapidjson/1.1.0+gitAUTOINC+e5635fb27f-r0/temp/log.do_package.17579
ERROR: Task (/home/nng/imx-yocto-bsp/sources/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb:do_package) failed with exit code '1'
ERROR: devil-1.8.0-r0 do_package: QA Issue: devil: Files/directories were installed but not shipped in any package:
/usr/lib/libIL.so
/usr/lib/libILUT.so
/usr/lib/libILU.so
/usr/lib/pkgconfig
/usr/lib/pkgconfig/ILUT.pc
/usr/lib/pkgconfig/ILU.pc
/usr/lib/pkgconfig/IL.pc
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
devil: 7 installed and not shipped files. [installed-vs-shipped]
ERROR: devil-1.8.0-r0 do_package: Fatal QA errors found, failing task.
ERROR: devil-1.8.0-r0 do_package: Function failed: do_package
ERROR: Logfile of failure stored in: /home/nng/imx-yocto-bsp/build-wayland/tmp/work/imx8mqevk-poky-linux/devil/1.8.0-r0/temp/log.do_package.17582
ERROR: Task (/home/nng/imx-yocto-bsp/sources/meta-fsl-bsp-release/imx/meta-sdk/recipes-graphics/devil/devil_1.8.0.bb:do_package) failed with exit code '1'

So two packages are failing in do_package phase

/home/nng/imx-yocto-bsp/sources/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb:do_package
/home/nng/imx-yocto-bsp/sources/meta-fsl-bsp-release/imx/meta-sdk/recipes-graphics/devil/devil_1.8.0.bb:do_package

And the imx-gpu-sdk-5.3.0 fails at do_compile phase because the libIL is unavailable. It's should be in the devil_1.8.0 package but it failed previously. I manually checked in the 'tmp' dir, libIL.so exists but might not be copied into the correct folder.

/ld: cannot find -lIL

/home/nng/imx-yocto-bsp/sources/meta-fsl-bsp-release/imx/meta-sdk/recipes-graphics/imx-gpu-sdk/imx-gpu-sdk_5.3.0.bb:do_compile

I'm trying to figure out what should be added to the .bb files but no success so far. 


Does anyone have any suggestion?

Thank you in advance

0 Kudos
5 Replies

2,294 Views
YCYao
Contributor I

Did you solve this problem? I have same issue only when build yocto L4.14.98-2.0.0 with multilib support.

FILES_${PN} += "usr/lib"  could only solve the devil issue

but not for imx-gpu-sdk

| aarch64-poky-linux-g++ --sysroot=/home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/recipe-sysroot -s -o Window101_Wayland -Wl,-O1 -Wl,--hash-style=gnu -Wl,--
as-needed -pthread build/Yocto/obj_Wayland/Release/source/Window101.o build/Yocto/obj_Wayland/Release/source/Window101_Register.o /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/
imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslDemoApp/Window/build/Yocto/obj_Wayland/Release/libFslDemoApp.Window.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r
0/git/DemoFramework/FslDemoApp/Util/Graphics/build/Yocto/obj/Release/libFslDemoApp.Util.Graphics.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/DemoFra
mework/FslDemoHost/Window/build/Yocto/obj_Wayland/Release/libFslDemoHost.Window.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslDemoPla
tform/build/Yocto/obj/Release/libFslDemoPlatform.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslDemoHost/Base/build/Yocto/obj/Release/
libFslDemoHost.Base.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslNativeWindow/Platform/build/Yocto/obj_Wayland/Release/libFslNativeW
indow.Platform.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/ThirdParty/Mmdc/build/Yocto/obj/Release/libMmdc.a /home/ycyao/imx-yocto-bsp/build-dm421a/
tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslDemoApp/Base/build/Yocto/obj/Release/libFslDemoApp.Base.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-lin
ux/imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslService/Impl/build/Yocto/obj/Release/libFslService.Impl.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/Dem
oFramework/FslDemoApp/Shared/build/Yocto/obj/Release/libFslDemoApp.Shared.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslNativeWindow/
Base/build/Yocto/obj/Release/libFslNativeWindow.Base.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslGraphics/build/Yocto/obj/Release/l
ibFslGraphics.a /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslService/Consumer/build/Yocto/obj/Release/libFslService.Consumer.a /home/y
cyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/git/DemoFramework/FslBase/build/Yocto/obj/Release/libFslBase.a -lIL -lwayland-cursor -lwayland-client -lm -ldl -Wl,--
library-path=/home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/recipe-sysroot/usr/lib,-rpath-link=/home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-
poky-linux/imx-gpu-sdk/5.3.0-r0/recipe-sysroot/usr/lib
| /home/ycyao/imx-yocto-bsp/build-dm421a/tmp/work/aarch64-mx8mm-poky-linux/imx-gpu-sdk/5.3.0-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux/../../libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/7.3
.0/ld: cannot find -lIL
| collect2: error: ld returned 1 exit status
| GNUmakefile_Yocto:167: recipe for target 'Window101_Wayland' failed

0 Kudos

2,701 Views
jrtigerlee
Contributor III

Hi all,

FILES_${PN} += "usr/lib "  can fixed rapidjson and devil build issue,

but imx-gpu-sdk-5.3.0 still fails.

Any solution for this? 

0 Kudos

2,701 Views
jonners_guttman
Contributor II

Hi,

I had the same issue and resolved it by adding the line below to the "rapidjson_git.bb" and "devil_1.8.0.bb" files:

FILES_${PN} += "usr/lib "

For example:

FILES_${PN} = "${libdir} "
FILES_${PN} += "usr/lib "
FILES_${PN}-dev = "${includedir}/IL"

Hope this helps,

Jonners.

2,701 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Gábor Jákli,

I was able to bake the lib32-devil package, but the regular devil package is showing the same error you are seeing.

There seems to be a problem with the directories for the original recipe. A workaround you can see in some forums is adding the following line to force to include these files on the created image. You would need to add it on the sources/meta-fsl-bsp-release/imx/meta-sdk/recipes-graphics/devil/devil_1.8.0.bb recipe.

The line is:

FILES_${PN} += "${libdir}/"

Which for some reason is not working correctly. You may force bitbake to ship the files to a specific directory as a workaround.

I hope this helps!

Regards,

0 Kudos

2,701 Views
davidvescovi
Contributor V

I had a similar issue trying to get multilib working   see

0 Kudos