All of lore.kernel.org
 help / color / mirror / Atom feed
* 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.