libvpx0.9.5 configure fail with armv7a hardfloat

Bug #1161348 reported by scanli
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linaro OpenEmbedded
Fix Released
Medium
Unassigned
Linaro Toolchain Binaries
Invalid
Undecided
Unassigned

Bug Description

 my local.conf:
  TCMODE = "external-linaro"
  EXTERNAL_TOOLCHAIN = "/home/ljc/gcc-linaro-arm-linux-gnueabihf-2012.08-20120827_linux"
  IMAGE_LINGUAS = ""
  LIMIT_BUILT_LOCALES = "POSIX"
  DEFAULTTUNE_qemuarmv7a = "armv7athf-neon"
  LICENSE_FLAGS_WHITELIST = "commercial"
  INSANE_SKIP_${PN} += "ldflags"

  Build Configuration:
  BB_VERSION = "1.17.1"
  BUILD_SYS = "i686-linux"
  NATIVELSBSTRING = "Ubuntu-12.04"
  TARGET_SYS = "arm-poky-linux-gnueabi"
  MACHINE = "qemuarmv7a"
  DISTRO = "poky"
  DISTRO_VERSION = "1.3+snapshot-20130323"
  TUNE_FEATURES = "armv7a vfp"
  TARGET_FPU = "vfp"
  meta
  meta-yocto
  meta-yocto-bsp
  meta-hob = "master:6211a2bdd32f7b2c8de7a5d75353c0522c8d4230"
  toolchain-layer = "master:d4051ea47c3842f7acb1ba1d8eb688d275ace11f"
  meta-linaro-toolchain
  meta-linaro = "master:9ba698baa24d78b9400292c7738ad34edaf63e05"
  meta-baryon = "master:ba4283dd3c7199270d332e0fa69cdccf06fb3fef"
  meta-oe = "master:d4051ea47c3842f7acb1ba1d8eb688d275ace11f"
......
configure libvpx-0.9.5 failured:
  /poky/build/tmp/work/armv7ahf-vfp-neon-poky-linux-gnueabi/libvpx/0.9.5-r3.0/temp/log.do_configure.10631
  Configuring selected codecs
    enabling vp8_encoder
    enabling vp8_decoder
  Configuring for target 'armv7-linux-gcc'
    enabling armv7
    enabling armv6
    enabling armv5te
    enabling fast_unaligned
  Toolchain is unable to link executables

  Configuration failed. This could reflect a misconfiguration of your
  toolchains, improper options selected, or another problem. If you
  don't see any useful error messages above, the next step is to look
  at the configure error log file (config.err) to determine what
  configure was trying to do when it died.
  ERROR: Function failed: do_configure

Revision history for this message
Zhenqiang Chen (zhenqiang-chen) wrote :

Can you provide the test case and cmdline option, which triggers "unable to link executables"?

Thanks!
-Zhenqiang

Revision history for this message
scanli (scanli) wrote : Re:[Bug 1161348] Re: libvpx0.9.5 configure fail with external-linaro
Download full text (6.3 KiB)

in local.conf add fellow lines:
TCMODE = "external-linaro"
EXTERNAL_TOOLCHAIN = "/media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/tools/gcc-linaro-arm-linux-gnueabihf-4.7-2013.02-01-20130221_linux"
IMAGE_LINGUAS = ""
LIMIT_BUILT_LOCALES = "POSIX"
DEFAULTTUNE_qemuarmv7a = "armv7athf-neon"
LICENSE_FLAGS_WHITELIST = "commercial"
INSANE_SKIP_${PN} += "ldflags"
INSANE_SKIP_${PN}-dev = "ldflags"

Build Configuration:
BB_VERSION = "1.17.1"
BUILD_SYS = "i686-linux"
NATIVELSBSTRING = "Ubuntu-12.04"
TARGET_SYS = "arm-poky-linux-gnueabi"
MACHINE = "genericarmv7a"
DISTRO = "poky"
DISTRO_VERSION = "1.3+snapshot-20130329"
TUNE_FEATURES = "armv7a vfp thumb neon callconvention-hard"
TARGET_FPU = "vfp-neon"
meta
meta-yocto
meta-yocto-bsp
meta-hob = "master:6211a2bdd32f7b2c8de7a5d75353c0522c8d4230"
toolchain-layer = "master:d4051ea47c3842f7acb1ba1d8eb688d275ace11f"
meta-linaro-toolchain
meta-linaro = "master:4854e2ec06d48db380043e09234b06c19d30eb90"
meta-baryon = "master:ba4283dd3c7199270d332e0fa69cdccf06fb3fef"
meta-oe = "master:d4051ea47c3842f7acb1ba1d8eb688d275ace11f"

NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Running task 235 of 380 (ID: 19, /media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/poky/meta-openembedded/meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb, do_fetch)
NOTE: recipe libvpx-0.9.5-r3.0: task do_fetch: Succeeded
NOTE: Running task 369 of 380 (ID: 15, /media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/poky/meta-openembedded/meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb, do_unpack)
NOTE: recipe libvpx-0.9.5-r3.0: task do_unpack: Succeeded
NOTE: Running task 370 of 380 (ID: 16, /media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/poky/meta-openembedded/meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb, do_patch)
NOTE: recipe libvpx-0.9.5-r3.0: task do_patch: Succeeded
NOTE: Running task 371 of 380 (ID: 20, /media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/poky/meta-openembedded/meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb, do_configure)
NOTE: Running task 372 of 380 (ID: 22, /media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/poky/meta-openembedded/meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb, do_populate_lic)
NOTE: recipe libvpx-0.9.5-r3.0: task do_populate_lic: Succeeded
ERROR: Function failed: do_configure (see /media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/poky/build/tmp/work/armv7ahf-vfp-neon-poky-linux-gnueabi/libvpx/0.9.5-r3.0/temp/log.do_configure.13701 for further information)
NOTE: recipe libvpx-0.9.5-r3.0: task do_configure: Failed
ERROR: Task 20 (/media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/poky/meta-openembedded/meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb, do_configure) failed with exit code '1'
NOTE: Tasks Summary: Attempted 372 tasks of which 367 didn't need to be rerun and 1 failed.

log.do_configure.13701:
DEBUG: Executing python function sysroot_cleansstate
DEBUG: Python function sysroot_cleansstate finished
DEBUG: Executing shell function do_configure
Configuring selected codecs
  enabling vp8_encoder
  enabling vp8_decoder
Configuring for...

Read more...

Revision history for this message
Zhenqiang Chen (zhenqiang-chen) wrote : Re: libvpx0.9.5 configure fail with external-linaro

Can you send me the log.do_configure.13701?

Thanks!
-Zhenqiang

Revision history for this message
scanli (scanli) wrote : Re:[Bug 1161348] Re: libvpx0.9.5 configure fail with external-linaro

here is

log.do_configure.13701

At 2013-04-02 10:26:05,"Zhenqiang Chen" <email address hidden> wrote:
>Can you send me the log.do_configure.13701?
>
>Thanks!
>-Zhenqiang
>
>--
>You received this bug notification because you are subscribed to the bug
>report.
>https://bugs.launchpad.net/bugs/1161348
>
>Title:
> libvpx0.9.5 configure fail with external-linaro
>
>Status in Linaro Toolchain Binaries:
> New
>
>Bug description:
> my local.conf:
> TCMODE = "external-linaro"
> EXTERNAL_TOOLCHAIN = "/home/ljc/gcc-linaro-arm-linux-gnueabihf-2012.08-20120827_linux"
> IMAGE_LINGUAS = ""
> LIMIT_BUILT_LOCALES = "POSIX"
> DEFAULTTUNE_qemuarmv7a = "armv7athf-neon"
> LICENSE_FLAGS_WHITELIST = "commercial"
> INSANE_SKIP_${PN} += "ldflags"
>
> Build Configuration:
> BB_VERSION = "1.17.1"
> BUILD_SYS = "i686-linux"
> NATIVELSBSTRING = "Ubuntu-12.04"
> TARGET_SYS = "arm-poky-linux-gnueabi"
> MACHINE = "qemuarmv7a"
> DISTRO = "poky"
> DISTRO_VERSION = "1.3+snapshot-20130323"
> TUNE_FEATURES = "armv7a vfp"
> TARGET_FPU = "vfp"
> meta
> meta-yocto
> meta-yocto-bsp
> meta-hob = "master:6211a2bdd32f7b2c8de7a5d75353c0522c8d4230"
> toolchain-layer = "master:d4051ea47c3842f7acb1ba1d8eb688d275ace11f"
> meta-linaro-toolchain
> meta-linaro = "master:9ba698baa24d78b9400292c7738ad34edaf63e05"
> meta-baryon = "master:ba4283dd3c7199270d332e0fa69cdccf06fb3fef"
> meta-oe = "master:d4051ea47c3842f7acb1ba1d8eb688d275ace11f"
> ......
> configure libvpx-0.9.5 failured:
> /poky/build/tmp/work/armv7ahf-vfp-neon-poky-linux-gnueabi/libvpx/0.9.5-r3.0/temp/log.do_configure.10631
> Configuring selected codecs
> enabling vp8_encoder
> enabling vp8_decoder
> Configuring for target 'armv7-linux-gcc'
> enabling armv7
> enabling armv6
> enabling armv5te
> enabling fast_unaligned
> Toolchain is unable to link executables
>
> Configuration failed. This could reflect a misconfiguration of your
> toolchains, improper options selected, or another problem. If you
> don't see any useful error messages above, the next step is to look
> at the configure error log file (config.err) to determine what
> configure was trying to do when it died.
> ERROR: Function failed: do_configure
>
>To manage notifications about this bug go to:
>https://bugs.launchpad.net/linaro-toolchain-binaries/+bug/1161348/+subscriptions

Revision history for this message
Zhenqiang Chen (zhenqiang-chen) wrote : Re: libvpx0.9.5 configure fail with external-linaro

"If you don't see any useful error messages above, the next step is to look at the configure error log file (config.err) to determine what configure was trying to do when it died."

So would you please send me the "config.err"?

Thanks!
-Zhenqiang

Revision history for this message
scanli (scanli) wrote : Re:[Bug 1161348] Re: libvpx0.9.5 configure fail with external-linaro
Download full text (4.1 KiB)

I compile libvpx-0.9.5 without openembedded
when I use linaro toolchain:
ljc@ljc-virtual-machine:/media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/test/build$ CROSS=/home/ljc/gcc-linaro-arm-linux-gnueabihf-4.7-2012.12-20121214_linux/bin/arm-linux-gnueabihf- ../libvpx/configure --target=armv7-linux-gcc
Configuring selected codecs
  enabling vp8_encoder
  enabling vp8_decoder
Configuring for target 'armv7-linux-gcc'
  enabling armv7
  enabling armv6
  enabling armv5te
  enabling fast_unaligned
Toolchain is unable to link executables

Configuration failed. This could reflect a misconfiguration of your
toolchains, improper options selected, or another problem. If you
don't see any useful error messages above, the next step is to look
at the configure error log file (config.err) to determine what
configure was trying to do when it died.
config.err file is in appendix.

when I use Sourcery G++ toolchain:
ljc@ljc-virtual-machine:/media/9916233e-cc4d-4e15-9b67-a7d6c0d73f3e/test/build$ CROSS=/home/ljc/arm-2012.03/bin/arm-none-linux-gnueabi- ../libvpx/configure --target=armv7-linux-gcc
Configuring selected codecs
  enabling vp8_encoder
  enabling vp8_decoder
Configuring for target 'armv7-linux-gcc'
  enabling armv7
  enabling armv6
  enabling armv5te
  enabling fast_unaligned
Creating makefiles for armv7-linux-gcc libs
Creating makefiles for armv7-linux-gcc examples
Creating makefiles for armv7-linux-gcc docs
and the config.err file is config-Sourcery.err.tar.bz2

At 2013-04-03 10:27:15,"Zhenqiang Chen" <email address hidden> wrote:
>"If you don't see any useful error messages above, the next step is to look at the configure error log file (config.err) to determine what configure was trying to do when it died."
>
>So would you please send me the "config.err"?
>
>Thanks!
>-Zhenqiang
>
>--
>You received this bug notification because you are subscribed to the bug
>report.
>https://bugs.launchpad.net/bugs/1161348
>
>Title:
> libvpx0.9.5 configure fail with external-linaro
>
>Status in Linaro Toolchain Binaries:
> New
>
>Bug description:
> my local.conf:
> TCMODE = "external-linaro"
> EXTERNAL_TOOLCHAIN = "/home/ljc/gcc-linaro-arm-linux-gnueabihf-2012.08-20120827_linux"
> IMAGE_LINGUAS = ""
> LIMIT_BUILT_LOCALES = "POSIX"
> DEFAULTTUNE_qemuarmv7a = "armv7athf-neon"
> LICENSE_FLAGS_WHITELIST = "commercial"
> INSANE_SKIP_${PN} += "ldflags"
>
> Build Configuration:
> BB_VERSION = "1.17.1"
> BUILD_SYS = "i686-linux"
> NATIVELSBSTRING = "Ubuntu-12.04"
> TARGET_SYS = "arm-poky-linux-gnueabi"
> MACHINE = "qemuarmv7a"
> DISTRO = "poky"
> DISTRO_VERSION = "1.3+snapshot-20130323"
> TUNE_FEATURES = "armv7a vfp"
> TARGET_FPU = "vfp"
> meta
> meta-yocto
> meta-yocto-bsp
> meta-hob = "master:6211a2bdd32f7b2c8de7a5d75353c0522c8d4230"
> toolchain-layer = "master:d4051ea47c3842f7acb1ba1d8eb688d275ace11f"
> meta-linaro-toolchain
> meta-linaro = "master:9ba698baa24d78b9400292c7738ad34edaf63e05"
> meta-baryon = "master:ba4283dd3c7199270d332e0fa69cdccf06fb3fef"
> meta-oe ...

Read more...

Revision history for this message
Marcin Juszkiewicz (hrw) wrote : Re: libvpx0.9.5 configure fail with external-linaro

check_ld
check_cc
BEGIN /tmp/vpx-conf-3192-9118.c
    1 int main(void) {return 0;}
END /tmp/vpx-conf-3192-9118.c
arm-linux-gnueabihf-gcc -march=armv7-a -marm -mthumb-interwork -mfloat-abi=hard -mfpu=neon --sysroot=/home/hrw/HDD/devel/canonical/aarch64/openembedded/build/tmp-eglibc/
sysroots/genericarmv7a -isystem/home/hrw/devel/canonical/aarch64/openembedded/build/linaro-tcwg/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/arm-linux-gnuea
bihf/include -O2 -pipe -g -feliminate-unused-debug-types -fPIC -march=armv7-a -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp -O3 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=6
4 -Wall -Wdeclaration-after-statement -Wdisabled-optimization -Wpointer-arith -Wtype-limits -Wcast-qual -Wno-unused -c -o /tmp/vpx-conf-3192-23790.o /tmp/vpx-conf-3192-9
118.c arm-linux-gnueabihf-gcc -march=armv7-a -marm -mthumb-interwork -mfloat-abi=hard -mfpu=neon --sysroot=/home/hrw/HDD/devel/canonical/aarch64/openembedded/build/tmp-eglibc/
sysroots/genericarmv7a -L/home/hrw/devel/canonical/aarch64/openembedded/build/linaro-tcwg/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/arm-linux-gnueabihf/lib -Wl,-rpath-link,/home/hrw/devel/canonical/aarch64/openembedded/build/linaro-tcwg/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/arm-linux-gnueabihf/lib -Wl
,-O1 -Wl,--hash-style=gnu -o /tmp/vpx-conf-3192-11886.x /tmp/vpx-conf-3192-23790.o -lpthread
/home/hrw/HDD/devel/canonical/aarch64/openembedded/build/linaro-tcwg/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/.
./../../../arm-linux-gnueabihf/bin/ld: error: /tmp/vpx-conf-3192-11886.x uses VFP register arguments, /tmp/vpx-conf-3192-23790.o does not
/home/hrw/HDD/devel/canonical/aarch64/openembedded/build/linaro-tcwg/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/.
./../../../arm-linux-gnueabihf/bin/ld: failed to merge target specific data of file /tmp/vpx-conf-3192-23790.o
collect2: error: ld returned 1 exit status

Changed in linaro-toolchain-binaries:
status: New → Confirmed
Revision history for this message
Marcin Juszkiewicz (hrw) wrote :

libvpx hardcodes softfp float api... Will send fix to OE.

Revision history for this message
Marcin Juszkiewicz (hrw) wrote :

Bug is in libvpx not in Linaro toolchain.

Changed in linaro-oe:
status: New → In Progress
assignee: nobody → Marcin Juszkiewicz (hrw)
importance: Undecided → Medium
milestone: none → 13.04
summary: - libvpx0.9.5 configure fail with external-linaro
+ libvpx0.9.5 configure fail with armv7a hardfloat
Changed in linaro-toolchain-binaries:
status: Confirmed → Invalid
Revision history for this message
Zhenqiang Chen (zhenqiang-chen) wrote :

Is your sysroot libc hardfp or softfp?

--sysroot=/home/hrw/HDD/devel/canonical/aarch64/openembedded/build/tmp-eglibc/sysroots/genericarmv7a

i.e
arm-linux-gnueabihf-readelf -A libc-2.15.so | grep Tag_ABI_HardFP_use

For softfp, it is Tag_ABI_HardFP_use: SP and DP

For hardfp, it is Tag_ABI_VFP_args: VFP registers

The toolchain only works with hardfp sysroot.

Revision history for this message
Marcin Juszkiewicz (hrw) wrote :

Zhenqiang: it is a problem only with hardfp sysroot. But you can ignore it now - I sent fix to OE ML already.

Revision history for this message
Marcin Juszkiewicz (hrw) wrote :

Patch got merged into OE.

Changed in linaro-oe:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.