[oe] libtool relink problem on libsanitizer in gcc-runtime_4.9.bbappend

Lewis, Nick nick.lewis at usa.g4s.com
Thu Jun 5 09:47:13 UTC 2014


Until recently we have added libmudflap support via gcc-runtime_4.8.bbappend. Libmudflap is no longer supported in gcc 4.9 and Libsanitizer is the recommended replacement. I have changed the recipe to produce libsanitizer instead of libmudflap but I am getting a QA error involving libtool relink with –L/usr/lib.

I am unable to establish the cause of the problem. Could someone with libtool expertise please help me


$ cat gcc-runtime_4.9.bbappend
# Addition of Asan address sanitizer (previously Mudflap)
PRINC := "${@int(PRINC) + 1}"

# enable-libmudflap and disable-libmudflap options no longer supported
EXTRA_OECONF_BASE := "${@oe_filter_out('--disable-libmudflap', '${EXTRA_OECONF_BASE}', d)}"

RUNTIMETARGET += "libsanitizer"
PACKAGES += "libasan libasan-dev libasan-staticdev libasan-preinit libubsan libubsan-dev libubsan-staticdev"

FILES_libasan = "${libdir}/libasan*.so.*"
FILES_libasan-dev = "\
  ${libdir}/libsanitizer.spec \
  ${libdir}/libasan*.so \
  ${libdir}/libasan.la"
FILES_libasan-staticdev = "\
  ${libdir}/libasan.a"
FILES_libasan-preinit = "\
  ${libdir}/libasan_preinit.o"

FILES_libubsan = "${libdir}/libubsan*.so.*"
FILES_libubsan-dev = "\
  ${libdir}/libsanitizer.spec \
  ${libdir}/libubsan*.so \
  ${libdir}/libubsan.la"
FILES_libubsan-staticdev = "\
  ${libdir}/libubsan.a"


$ bitbake gcc-runtime
ERROR: QA Issue: gcc-runtime: The instal log indicates that host include and/or library paths were used
…

$ cat log.do_install
…
/bin/bash ../libtool   --mode=install /usr/bin/install -c   libasan.la '/home/nick/fsl-community-bsp-master/buildmaster/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/gcc-runtime/4.9.0-r1/image/usr/lib'
 /usr/bin/install -c -m 644 libasan_preinit.o '/home/nick/fsl-community-bsp-master/buildmaster/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/gcc-runtime/4.9.0-r1/image/usr/lib'
libtool: install: warning: relinking `libasan.la'
libtool: install: (cd /home/nick/fsl-community-bsp-master/buildmaster/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/gcc-runtime/4.9.0-r1/gcc-4.9.0/build.arm-poky-linux-gnueabi.arm-poky-linux-gnueabi/arm-poky-linux-gnueabi/libsanitizer/asan; /bin/bash /home/nick/fsl-community-bsp-master/buildmaster/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/gcc-runtime/4.9.0-r1/gcc-4.9.0/build.arm-poky-linux-gnueabi.arm-poky-linux-gnueabi/arm-poky-linux-gnueabi/libsanitizer/libtool  --tag CXX --mode=relink arm-poky-linux-gnueabi-g++ -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 --sysroot=/home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/imx6qsabresd2 -nostdinc++ -nostdlib++ -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include -I../../libstdc++-v3/include/arm-poky-linux-gnueabi -I/home/nick/fsl-community-bsp-master/buildmaster/tmp/work-shared/gcc-4.9.0-r1/gcc-4.9.0/libsanitizer/../libstdc++-v3/libsupc++ -O2 -pipe -g -feliminate-unused-debug-types -version-info 1:0:0 -lpthread -ldl -lm -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o libasan.la -rpath /usr/lib asan_allocator2.lo asan_dll_thunk.lo asan_fake_stack.lo asan_globals.lo asan_interceptors.lo asan_linux.lo asan_mac.lo asan_malloc_linux.lo asan_malloc_mac.lo asan_malloc_win.lo asan_new_delete.lo asan_poisoning.lo asan_posix.lo asan_report.lo asan_rtl.lo asan_stack.lo asan_stats.lo asan_thread.lo asan_win.lo ../sanitizer_common/libsanitizer_common.la ../lsan/libsanitizer_lsan.la ../interception/libinterception.la ../libbacktrace/libsanitizer_libbacktrace.la ../../libstdc++-v3/src/libstdc++.la -inst-prefix-dir /home/nick/fsl-community-bsp-master/buildmaster/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/gcc-runtime/4.9.0-r1/image)
libtool: relink: arm-poky-linux-gnueabi-g++  -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 --sysroot=/home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/imx6qsabresd2 -nostdinc++ -nostdlib++ -shared -nostdlib /home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/imx6qsabresd2/usr/lib/crti.o /home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/imx6qsabresd2/usr/lib/arm-poky-linux-gnueabi/4.9.0/crtbeginS.o  .libs/asan_allocator2.o .libs/asan_dll_thunk.o .libs/asan_fake_stack.o .libs/asan_globals.o .libs/asan_interceptors.o .libs/asan_linux.o .libs/asan_mac.o .libs/asan_malloc_linux.o .libs/asan_malloc_mac.o .libs/asan_malloc_win.o .libs/asan_new_delete.o .libs/asan_poisoning.o .libs/asan_posix.o .libs/asan_report.o .libs/asan_rtl.o .libs/asan_stack.o .libs/asan_stats.o .libs/asan_thread.o .libs/asan_win.o  -Wl,--whole-archive ../sanitizer_common/.libs/libsanitizer_common.a ../lsan/.libs/libsanitizer_lsan.a ../interception/.libs/libinterception.a ../libbacktrace/.libs/libsanitizer_libbacktrace.a -Wl,--no-whole-archive  -lpthread -ldl -L/home/nick/fsl-community-bsp-master/buildmaster/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/gcc-runtime/4.9.0-r1/image/usr/lib -L/usr/lib -lstdc++ -lm -L/home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/x86_64-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.9.0 -L/home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/imx6qsabresd2/lib -L/home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/imx6qsabresd2/usr/lib/arm-poky-linux-gnueabi/4.9.0 -L/home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/imx6qsabresd2/usr/lib -lc -lgcc_s /home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/imx6qsabresd2/usr/lib/arm-poky-linux-gnueabi/4.9.0/crtendS.o /home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/imx6qsabresd2/usr/lib/crtn.o  -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed   -Wl,-soname -Wl,libasan.so.1 -o .libs/libasan.so.1.0.0
/home/nick/fsl-community-bsp-master/buildmaster/tmp/sysroots/x86_64-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.9.0/ld: warning: library search path "/usr/lib" is unsafe for cross-compilation
…

--
Nick


Nick Lewis
nick.lewis at usa.g4s.com
+44 1684 277137
www.g4stechnology.com
New Challenge House, International Drive, Tewkesbury, Gloucestershire, GL20 8UQ, UK

 Please consider the environment before printing this email


The details of this company are as follows:
G4S Technology Limited, Registered Office: Challenge House, International Drive, Tewkesbury, Gloucestershire GL20 8UQ, Registered in England No. 2382338.

This communication may contain information which is confidential, personal and/or privileged.

It is for the exclusive use of the intended recipient(s).
If you are not the intended recipient(s), please note that any distribution, forwarding, copying or use of this communication or the information in it is strictly prohibited.

Any personal views expressed in this e-mail are those of the individual sender and the company does not endorse or accept responsibility for them.

Prior to taking any action based upon this e-mail message, you should seek appropriate confirmation of its authenticity.

This e-mail has been scanned for all viruses by MessageLabs.


More information about the Openembedded-devel mailing list