* MULTILIB builds with Yocto: Status? @ 2013-11-20 14:17 Nick D'Ademo 2013-11-24 9:53 ` Nick D'Ademo 0 siblings, 1 reply; 4+ messages in thread From: Nick D'Ademo @ 2013-11-20 14:17 UTC (permalink / raw) To: yocto [-- Attachment #1: Type: text/plain, Size: 1047 bytes --] From what I've read so far, by adding the following to the local.conf file (e.g. for a x86_64 build; in my case for the Intel NUC machine), Yocto will build an image which also contains 32-bit compiled system libraries (+ any 32-bit packages/recipes you have specified): require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "x86" However, running BitBake with the above added to local.conf results in a large number of build errors. To name a few: grub_2.0.0.bb: ... | checking whether the C compiler works... no | configure: error: in `/home/nick/poky/build/tmp/work/x86_64-poky-linux/grub/2.00-r1/build': | configure: error: C compiler cannot create executables ... ntp_4.2.6p5.bb: ... | configure: exit 77 | ERROR: oe_runconf failed ... Is there something I'm missing here? What is the status of MULTILIB support with Yocto? Has anyone attempted it lately? [The following guide seems a little outdated: https://wiki.yoctoproject.org/wiki/Multilib] Thanks, Nick [-- Attachment #2: Type: text/html, Size: 1430 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: MULTILIB builds with Yocto: Status? 2013-11-20 14:17 MULTILIB builds with Yocto: Status? Nick D'Ademo @ 2013-11-24 9:53 ` Nick D'Ademo 2013-11-24 14:43 ` Nick D'Ademo 0 siblings, 1 reply; 4+ messages in thread From: Nick D'Ademo @ 2013-11-24 9:53 UTC (permalink / raw) To: yocto [-- Attachment #1: Type: text/plain, Size: 6003 bytes --] *A follow up to this (after further testing with the Yocto image classes - i.e. not my own custom image):* *After adding the following to local.conf (keeping all other variables to their defaults):* require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "x86" *Using the following Build configuration:* BB_VERSION = "1.21.0" BUILD_SYS = "i686-linux" NATIVELSBSTRING = "Ubuntu-12.04" TARGET_SYS = "x86_64-poky-linux" MACHINE = "nuc" DISTRO = "poky" DISTRO_VERSION = "1.5+snapshot-20131124" TUNE_FEATURES = "m64" TARGET_FPU = "" meta meta-yocto meta-yocto-bsp = "master:6a8307c35705bf6c9f49c368dd730deef3d2ae15" meta-intel meta-nuc = "master:f5c2786e7ca190308523379706130e0c2be793c9" *The MULTILIB build is successful with the following images:* core-image-minimal core-image-base core-image-sato As stated in the meta-nuc README, I then also added the following to local.conf to enable hardware video acceleration: LICENSE_FLAGS_WHITELIST += "commercial" *Retrying the "core-image-sato" image build now results in errors:* *ERROR: QA Issue: x264: Files/directories were installed but not shipped /usr/lib /usr/lib/libx264.so.133 /usr/lib/libx264.so /usr/lib/libx264.a /usr/lib/pkgconfig /usr/lib/.debug /usr/lib/pkgconfig/x264.pc /usr/lib/.debug/libx264.so.133ERROR: QA run found fatal errors. Please consider fixing them. ERROR: Function failed: do_package_qaERROR: Logfile of failure stored in: /home/nick/poky/test/tmp/work/x86_64-poky-linux/x264/r2265+gitAUTOINC+585324fee3-r0/temp/log.do_package.11458ERROR: Task 4913 (/home/nick/poky/meta/recipes-multimedia/x264/x264_git.bb <http://x264_git.bb>, do_package) failed with exit code '1' ERROR: Function failed: do_configure (log file is located at /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/temp/log.do_configure.11457)ERROR: Logfile of failure stored in: /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/temp/log.do_configure.11457 Log data follows:| DEBUG: Executing python function sysroot_cleansstate| DEBUG: Python function sysroot_cleansstate finished| DEBUG: SITE files ['endian-little', 'common-linux', 'common-glibc', 'bit-64', 'x86_64-linux', 'common'] | DEBUG: Executing shell function autotools_preconfigure| DEBUG: Shell function autotools_preconfigure finished| DEBUG: Executing shell function do_configure| ERROR: libx264 not found| | If you think configure made a mistake, make sure you are using the latest | version from Git. If the latest version fails, report the problem to the| libav-user@libav.org <libav-user@libav.org> mailing list or IRC #libav on irc.freenode.net <http://irc.freenode.net>. | Include the log file "config.log" produced by configure as this will help| solving the problem.| WARNING: /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/temp/run.do_configure.11457:1 exit 1 from | /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/libav-0.8.8/configure --enable-shared --enable-pthreads --enable-gpl --enable-avfilter --cross-prefix=x86_64-poky-linux- --prefix=/usr --enable-avserver --enable-avplay --enable-libtheora --enable-libvorbis --arch=x86_64 --target-os="linux" --enable-cross-compile --extra-cflags=" -O2 -pipe -g -feliminate-unused-debug-types -m64 --sysroot=/home/nick/poky/test/tmp/sysroots/nuc" --extra-ldflags="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed" --sysroot="/home/nick/poky/test/tmp/sysroots/nuc" --enable-hardcoded-tables --enable-postproc --enable-bzlib --disable-libfaac --disable-libgsm --disable-indev=jack --disable-libmp3lame --disable-libschroedinger --disable-libvpx --enable-x11grab --enable-libx264 | ERROR: Function failed: do_configure (log file is located at /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/temp/log.do_configure.11457)ERROR: Task 3456 (/home/nick/poky/meta/recipes-multimedia/libav/libav_0.8.8.bb <http://libav_0.8.8.bb>, do_configure) failed with exit code '1' NOTE: Tasks Summary: Attempted 5748 tasks of which 5744 didn't need to be rerun and 2 failed.No currently running tasks (5748 of 5775)Summary: 2 tasks failed: /home/nick/poky/meta/recipes-multimedia/x264/x264_git.bb <http://x264_git.bb>, do_package /home/nick/poky/meta/recipes-multimedia/libav/libav_0.8.8.bb <http://libav_0.8.8.bb>, do_configureSummary: There were 4 ERROR messages shown, returning a non-zero exit code.* *This appears to be a bug with the libx264 recipe.* Any thoughts or comments on this? Has anyone else tried MULTILIB builds with the NUC hardware (with hardware acceleration enabled)? Thanks, Nick On Thu, Nov 21, 2013 at 1:17 AM, Nick D'Ademo <nickdademo@gmail.com> wrote: > From what I've read so far, by adding the following to the local.conf file > (e.g. for a x86_64 build; in my case for the Intel NUC machine), Yocto will > build an image which also contains 32-bit compiled system libraries (+ any > 32-bit packages/recipes you have specified): > > require conf/multilib.conf > MULTILIBS = "multilib:lib32" > DEFAULTTUNE_virtclass-multilib-lib32 = "x86" > > However, running BitBake with the above added to local.conf results in a > large number of build errors. To name a few: > > grub_2.0.0.bb: > ... > | checking whether the C compiler works... no > | configure: error: in > `/home/nick/poky/build/tmp/work/x86_64-poky-linux/grub/2.00-r1/build': > | configure: error: C compiler cannot create executables > ... > > ntp_4.2.6p5.bb: > ... > | configure: exit 77 > | ERROR: oe_runconf failed > ... > > Is there something I'm missing here? What is the status of MULTILIB > support with Yocto? Has anyone attempted it lately? > > [The following guide seems a little outdated: > https://wiki.yoctoproject.org/wiki/Multilib] > > Thanks, > Nick > [-- Attachment #2: Type: text/html, Size: 7584 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: MULTILIB builds with Yocto: Status? 2013-11-24 9:53 ` Nick D'Ademo @ 2013-11-24 14:43 ` Nick D'Ademo 2013-11-25 10:17 ` Paul Eggleton 0 siblings, 1 reply; 4+ messages in thread From: Nick D'Ademo @ 2013-11-24 14:43 UTC (permalink / raw) To: yocto [-- Attachment #1: Type: text/plain, Size: 6936 bytes --] Found the fix for these issues: *The two offending Poky recipes are:* recipes-multimedia/x264 recipes-multimedia/libav *Files which need to be modified:* x264_git.bb -> Add --libdir=${libdir} to EXTRA_OECONF variable libav.inc -> Add --libdir=${libdir} AND --shlibdir=${libdir} to EXTRA_OECONF variable As you can see from the above fixes, the issue was that the configure step was passing "usr/lib" instead of "usr/lib64" which ultimately caused the "installed but not shipped" errors. Are these actually bugs which should be patched in the recipes? Nick On Sun, Nov 24, 2013 at 8:53 PM, Nick D'Ademo <nickdademo@gmail.com> wrote: > *A follow up to this (after further testing with the Yocto image classes - > i.e. not my own custom image):* > > *After adding the following to local.conf (keeping all other variables to > their defaults):* > > require conf/multilib.conf > MULTILIBS = "multilib:lib32" > DEFAULTTUNE_virtclass-multilib-lib32 = "x86" > > *Using the following Build configuration:* > BB_VERSION = "1.21.0" > BUILD_SYS = "i686-linux" > NATIVELSBSTRING = "Ubuntu-12.04" > TARGET_SYS = "x86_64-poky-linux" > MACHINE = "nuc" > DISTRO = "poky" > DISTRO_VERSION = "1.5+snapshot-20131124" > TUNE_FEATURES = "m64" > TARGET_FPU = "" > meta > meta-yocto > meta-yocto-bsp = "master:6a8307c35705bf6c9f49c368dd730deef3d2ae15" > meta-intel > meta-nuc = "master:f5c2786e7ca190308523379706130e0c2be793c9" > > *The MULTILIB build is successful with the following images:* > core-image-minimal > core-image-base > core-image-sato > > As stated in the meta-nuc README, I then also added the following to > local.conf to enable hardware video acceleration: > LICENSE_FLAGS_WHITELIST += "commercial" > > *Retrying the "core-image-sato" image build now results in errors:* > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > *ERROR: QA Issue: x264: Files/directories were installed but not shipped > /usr/lib /usr/lib/libx264.so.133 /usr/lib/libx264.so /usr/lib/libx264.a > /usr/lib/pkgconfig /usr/lib/.debug /usr/lib/pkgconfig/x264.pc > /usr/lib/.debug/libx264.so.133ERROR: QA run found fatal errors. Please > consider fixing them. ERROR: Function failed: do_package_qaERROR: Logfile > of failure stored in: > /home/nick/poky/test/tmp/work/x86_64-poky-linux/x264/r2265+gitAUTOINC+585324fee3-r0/temp/log.do_package.11458ERROR: > Task 4913 (/home/nick/poky/meta/recipes-multimedia/x264/x264_git.bb > <http://x264_git.bb>, do_package) failed with exit code '1' ERROR: Function > failed: do_configure (log file is located at > /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/temp/log.do_configure.11457)ERROR: > Logfile of failure stored in: > /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/temp/log.do_configure.11457 > Log data follows:| DEBUG: Executing python function sysroot_cleansstate| > DEBUG: Python function sysroot_cleansstate finished| DEBUG: SITE files > ['endian-little', 'common-linux', 'common-glibc', 'bit-64', 'x86_64-linux', > 'common'] | DEBUG: Executing shell function autotools_preconfigure| DEBUG: > Shell function autotools_preconfigure finished| DEBUG: Executing shell > function do_configure| ERROR: libx264 not found| | If you think configure > made a mistake, make sure you are using the latest | version from Git. If > the latest version fails, report the problem to the| libav-user@libav.org > <libav-user@libav.org> mailing list or IRC #libav on irc.freenode.net > <http://irc.freenode.net>. | Include the log file "config.log" produced by > configure as this will help| solving the problem.| WARNING: > /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/temp/run.do_configure.11457:1 > exit 1 from | > /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/libav-0.8.8/configure > --enable-shared --enable-pthreads --enable-gpl --enable-avfilter > --cross-prefix=x86_64-poky-linux- --prefix=/usr --enable-avserver > --enable-avplay --enable-libtheora --enable-libvorbis --arch=x86_64 > --target-os="linux" --enable-cross-compile --extra-cflags=" -O2 -pipe -g > -feliminate-unused-debug-types -m64 > --sysroot=/home/nick/poky/test/tmp/sysroots/nuc" --extra-ldflags="-Wl,-O1 > -Wl,--hash-style=gnu -Wl,--as-needed" > --sysroot="/home/nick/poky/test/tmp/sysroots/nuc" --enable-hardcoded-tables > --enable-postproc --enable-bzlib --disable-libfaac --disable-libgsm > --disable-indev=jack --disable-libmp3lame --disable-libschroedinger > --disable-libvpx --enable-x11grab --enable-libx264 | ERROR: Function > failed: do_configure (log file is located at > /home/nick/poky/test/tmp/work/x86_64-poky-linux/libav/0.8.8-r0/temp/log.do_configure.11457)ERROR: > Task 3456 (/home/nick/poky/meta/recipes-multimedia/libav/libav_0.8.8.bb > <http://libav_0.8.8.bb>, do_configure) failed with exit code '1' NOTE: > Tasks Summary: Attempted 5748 tasks of which 5744 didn't need to be rerun > and 2 failed.No currently running tasks (5748 of 5775)Summary: 2 tasks > failed: /home/nick/poky/meta/recipes-multimedia/x264/x264_git.bb > <http://x264_git.bb>, do_package > /home/nick/poky/meta/recipes-multimedia/libav/libav_0.8.8.bb > <http://libav_0.8.8.bb>, do_configureSummary: There were 4 ERROR messages > shown, returning a non-zero exit code.* > > *This appears to be a bug with the libx264 recipe.* > > Any thoughts or comments on this? > Has anyone else tried MULTILIB builds with the NUC hardware (with hardware > acceleration enabled)? > > Thanks, > Nick > > > On Thu, Nov 21, 2013 at 1:17 AM, Nick D'Ademo <nickdademo@gmail.com>wrote: > >> From what I've read so far, by adding the following to the local.conf >> file (e.g. for a x86_64 build; in my case for the Intel NUC machine), Yocto >> will build an image which also contains 32-bit compiled system libraries (+ >> any 32-bit packages/recipes you have specified): >> >> require conf/multilib.conf >> MULTILIBS = "multilib:lib32" >> DEFAULTTUNE_virtclass-multilib-lib32 = "x86" >> >> However, running BitBake with the above added to local.conf results in a >> large number of build errors. To name a few: >> >> grub_2.0.0.bb: >> ... >> | checking whether the C compiler works... no >> | configure: error: in >> `/home/nick/poky/build/tmp/work/x86_64-poky-linux/grub/2.00-r1/build': >> | configure: error: C compiler cannot create executables >> ... >> >> ntp_4.2.6p5.bb: >> ... >> | configure: exit 77 >> | ERROR: oe_runconf failed >> ... >> >> Is there something I'm missing here? What is the status of MULTILIB >> support with Yocto? Has anyone attempted it lately? >> >> [The following guide seems a little outdated: >> https://wiki.yoctoproject.org/wiki/Multilib] >> >> Thanks, >> Nick >> > > [-- Attachment #2: Type: text/html, Size: 9078 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: MULTILIB builds with Yocto: Status? 2013-11-24 14:43 ` Nick D'Ademo @ 2013-11-25 10:17 ` Paul Eggleton 0 siblings, 0 replies; 4+ messages in thread From: Paul Eggleton @ 2013-11-25 10:17 UTC (permalink / raw) To: Nick D'Ademo; +Cc: yocto Hi Nick, On Monday 25 November 2013 01:43:32 Nick D'Ademo wrote: > Found the fix for these issues: > > *The two offending Poky recipes are:* > recipes-multimedia/x264 > recipes-multimedia/libav > > *Files which need to be modified:* > x264_git.bb -> Add --libdir=${libdir} to EXTRA_OECONF variable > libav.inc -> Add --libdir=${libdir} AND --shlibdir=${libdir} to > EXTRA_OECONF variable > > As you can see from the above fixes, the issue was that the configure step > was passing "usr/lib" instead of "usr/lib64" which ultimately caused the > "installed but not shipped" errors. > > Are these actually bugs which should be patched in the recipes? These two recipes have their own custom (non-autotools) configure scripts and thus we compose our own configure command line to match; so yes we should fix these. Would you be able to send a patch on top of OE-Core to add the options to each recipe? There's a guide here if you need it: http://www.openembedded.org/wiki/How_to_submit_a_patch_to_OpenEmbedded Thanks, Paul -- Paul Eggleton Intel Open Source Technology Centre ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-11-25 10:17 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-11-20 14:17 MULTILIB builds with Yocto: Status? Nick D'Ademo 2013-11-24 9:53 ` Nick D'Ademo 2013-11-24 14:43 ` Nick D'Ademo 2013-11-25 10:17 ` Paul Eggleton
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.