[yocto] New recipe for toolchain fails install, "ERROR: ld.so: object 'libpseudo.so' from LD_PRELOAD cannot be preloaded: ignored."

Jim Rafert jimr at spectralogic.com
Thu Nov 13 12:13:16 PST 2014


Hi folks,

I'm trying to put together a recipe to include llvm and clang in the yocto toolchain.  My goal is to have the clang compiler available for application development.  I do not intend to compile the kernel or OS image with clang.  I have created a recipe and placed it in one of my added layers as follows:

LICENSE = "NCSA"
PR = "r0"
LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=47e311aa9caedd1b3abf098bd7814d1d"

SRC_URI = "file://llvm-3.5.0.tar.gz \
          "
SRC_URI[md5sum] = "e2dd127722ffb305c981d2a02687b4ff"
SRC_URI[sha256sum] = "1badb762129feb7ced9484a7969c88cebab9b01b80b83002fc9690933cd7d0e0"

EXTRA_OECONF = "--config=Linux-yocto "

INHIBIT_PACKAGE_DEBUG_SPLIT = "1"

INSANE_SKIP_${PN} = "already-stripped"

#FILES_${PN} = "${libdir}/* /usr/bin "
inherit autotools

do_configure () {
        ./configure --enable-optimized --enable-targets=x86,x86_64 --host=x86_64-unknown-linux-gnu --build=x86_64-unknown-linux-gnu
}

The recipe is copied from another recipe of mine that builds the POCO libraries, so INSANE_SKIP_${PN} = "already-stripped" may not actually be necessary, but was left in until I got the recipe running.

I add the recipe to the toolchain by including it in TOOLCHAIN_HOST_TASK from my local.conf, thus:
"TOOLCHAIN_HOST_TASK += " llvm "

This gets the source unpacked, configures, and compiles, but do_install fails with several instances of this message: "ERROR: ld.so: object 'libpseudo.so' from LD_PRELOAD cannot be preloaded: ignored."

Even though it doesn't install, the build products are in the work directory, so I examined them.

[jimr at krusty llvm-3.5.0]$ file /home/jimr/tera/yocto/daisy/build/tmp/work/i586-poky-linux/llvm/3.5.0-r0/llvm-3.5.0/Release+Asserts/bin/clang
/home/jimr/tera/yocto/daisy/build/tmp/work/i586-poky-linux/llvm/3.5.0-r0/llvm-3.5.0/Release+Asserts/bin/clang: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, BuildID[sha1]=0x96bd97125551d23e94bcbbc4e68b69b8db36def9, not stripped

I was hoping that this would be built for the architecture specified in local.conf for the toolchain, which is: SDKMACHINE ?= "x86_64"

I think that this architecture mismatch may be the root of the problem with the LD_PRELOAD of pseudo.  I also would expect that the work directory would be under x86_64-nativesdk-pokysdk-linux or x86_64-pokysdk-linux rather than i586-poky-linux.

Do any of you Yocto/OE/bitbake experts out there know what I might be doing wrong, or not doing, that causes this problem?

I have attached the output of the bitbake command, my local.conf file, the recipe, and config.log and config.status from the work directory for your viewing pleasure.

Any help with this would be greatly appreciated.

-Jim-
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20141113/e8e5cada/attachment.html>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: buildoutput.txt
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20141113/e8e5cada/attachment.txt>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm_3.5.0.bb
Type: application/octet-stream
Size: 794 bytes
Desc: llvm_3.5.0.bb
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20141113/e8e5cada/attachment.obj>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: config.log
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20141113/e8e5cada/attachment.ksh>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: config.status
Type: application/octet-stream
Size: 48764 bytes
Desc: config.status
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20141113/e8e5cada/attachment-0001.obj>


More information about the yocto mailing list