On Tue, Jan 17, 2012 at 02:29:46PM -0800, Khem Raj wrote:
> On Tue, Jan 17, 2012 at 5:09 AM, Martin Jansa <[email protected]> wrote:
> > After fixing gnutls pulling system libs to every EFL build I ended with only
> > difference - libdir in libstdc++.la
> >
> > OE @ ~/shr-core/tmp-eglibc/sysroots $ grep libdir */usr/lib/libstdc*la
> > nokia900/usr/lib/libstdc++.la:libdir='/usr/lib'
> > om-gta02/usr/lib/libstdc++.la:libdir='/usr/lib'
> > qemux86-64/usr/lib/libstdc++.la:libdir='/usr/lib/../lib'
> > spitz/usr/lib/libstdc++.la:libdir='/usr/lib'
> >
> > Which results in added -Wl,-rpath -Wl,/usr/lib/../lib while building for
> > qemux86-64 (see logs below).
> >
> > Is there any reason to have different libdir (pointing to the same directory
> > actually)? Or is it bug in libtool or how it's used from eve? Can we change
> > it in gcc-runtime?
> >
> > smaller test-case:
> > OE @ ~/shr-core/tmp-eglibc $ 
> > sysroots/qemux86-64/usr/bin/crossscripts/x86_64-oe-linux-libtool -n 
> > --tag=CC --mode=link x86_64-oe-linux-gcc -m64 
> > --sysroot=/OE/shr-core/tmp-eglibc/sysroots/qemux86-64 -o test -lstdc++
> > x86_64-oe-linux-libtool: link: x86_64-oe-linux-gcc -m64 
> > --sysroot=/OE/shr-core/tmp-eglibc/sysroots/qemux86-64 -o test  
> > /OE/shr-core/tmp-eglibc/sysroots/qemux86-64/usr/lib/../lib/libstdc++.so -lm 
> > -Wl,-rpath -Wl,/usr/lib/../lib
> >
> > OE @ ~/shr-core/tmp-eglibc $ 
> > sysroots/nokia900/usr/bin/crossscripts/arm-oe-linux-gnueabi-libtool -n 
> > --tag=CC --mode=link arm-oe-linux-gnueabi-gcc -march=armv7-a 
> > --sysroot=/OE/shr-core/tmp-eglibc/sysroots/nokia900 -o test -lstdc++
> > arm-oe-linux-gnueabi-libtool: link: arm-oe-linux-gnueabi-gcc -march=armv7-a 
> > --sysroot=/OE/shr-core/tmp-eglibc/sysroots/nokia900 -o test  
> > /OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libstdc++.so -lm
> >
> > I can confirm that manually changing /usr/lib/../lib to just /usr/lib
> > in libstdc++.la works for eve build - -rpath is gone (and IIRC I had
> > similar issue for openssh or openssl).
> 
> Can you confirm the converse ? i.e. change /usr/lib to /usr/lib/../lib
> in say for arm
> build and check what happens ?

Sure:
OE @ ~/shr-core/tmp-eglibc $ cat sysroots/nokia900/usr/lib/libstdc++.la | grep 
libdir
libdir='/usr/lib'
OE @ ~/shr-core/tmp-eglibc $ 
sysroots/nokia900/usr/bin/crossscripts/arm-oe-linux-gnueabi-libtool -n --tag=CC 
--mode=link arm-oe-linux-gnueabi-gcc -march=armv7-a 
--sysroot=/OE/shr-core/tmp-eglibc/sysroots/nokia900 -o test -lstdc++
arm-oe-linux-gnueabi-libtool: link: arm-oe-linux-gnueabi-gcc -march=armv7-a 
--sysroot=/OE/shr-core/tmp-eglibc/sysroots/nokia900 -o test  
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libstdc++.so -lm

OE @ ~/shr-core/tmp-eglibc $ sed -i 
"s#libdir='/usr/lib'#libdir='/usr/lib/../lib'#g" 
sysroots/nokia900/usr/lib/libstdc++.la
OE @ ~/shr-core/tmp-eglibc $ cat sysroots/nokia900/usr/lib/libstdc++.la | grep 
libdir
libdir='/usr/lib/../lib'
OE @ ~/shr-core/tmp-eglibc $ 
sysroots/nokia900/usr/bin/crossscripts/arm-oe-linux-gnueabi-libtool -n --tag=CC 
--mode=link arm-oe-linux-gnueabi-gcc -march=armv7-a 
--sysroot=/OE/shr-core/tmp-eglibc/sysroots/nokia900 -o test -lstdc++
arm-oe-linux-gnueabi-libtool: link: arm-oe-linux-gnueabi-gcc -march=armv7-a 
--sysroot=/OE/shr-core/tmp-eglibc/sysroots/nokia900 -o test  
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/../lib/libstdc++.so -lm 
-Wl,-rpath -Wl,/usr/lib/../lib

So -rpath is here now.. lets see eve build:

OE @ 
~/shr-core/tmp-eglibc/work/armv7a-vfp-neon-oe-linux-gnueabi/eve-0.3.0.0+svnr67278-r2/eve/src/bin
 $ ../../arm-oe-linux-gnueabi-libtool --debug -v -n --tag=CC   --mode=link 
arm-oe-linux-gnueabi-gcc  -march=armv7-a -fno-tree-vectorize      
-mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a8 
--sysroot=/OE/shr-core/tmp-eglibc/sysroots/nokia900 -std=gnu99  -O2 -pipe -g 
-feliminate-unused-debug-types  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o 
eve main.o view.o chrome.o eve_state.o -pthread -lelementary -lm -leet -lefreet 
-lefreet_mime -lefreet_trash -lethumb_client -lethumb -ledbus -ldbus-1 
-lpthread -lrt -leina -lecore_evas -lecore_file -ledje -lemotion -lepdf -lexif 
-lpoppler -lecore -levas -lecore_imf -lecore_con   -lewebkit -lcairo -levas 
-lecore -lecore_file   -ledbus -ldbus-1 -lpthread -lrt   -lm 2> eve.link.libtool
arm-oe-linux-gnueabi-libtool: enabling shell trace mode
arm-oe-linux-gnueabi-libtool: link: arm-oe-linux-gnueabi-gcc -march=armv7-a 
-fno-tree-vectorize -mthumb-interwork -mfloat-abi=softfp -mfpu=neon 
-mtune=cortex-a8 --sysroot=/OE/shr-core/tmp-eglibc/sysroots/nokia900 -std=gnu99 
-O2 -pipe -g -feliminate-unused-debug-types -Wl,-O1 -Wl,--hash-style=gnu 
-Wl,--as-needed -o eve main.o view.o chrome.o eve_state.o -pthread  
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libelementary.so -L=/usr/lib 
-L=/usr/lib/..//lib 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libefreet_mime.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libefreet_trash.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libefreet.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libethumb_client.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libethumb.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libedje.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_evas.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_x.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXcursor.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXdamage.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXcomposite.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXfixes.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXinerama.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXp.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXrandr.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXss.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXtst.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXi.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXext.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_fb.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libts.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_ipc.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_input_evas.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_input.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libembryo.so -llua 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_imf_evas.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libsndfile.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libemotion.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libeeze.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libudev.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libmount.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libblkid.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libuuid.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libepdf.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libexif.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libpoppler.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/liblcms.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/../lib/libstdc++.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_imf.so -lewebkit 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libcairo.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libpixman-1.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libpng12.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXrender.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libX11.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libxcb.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXau.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libXdmcp.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libevas.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libfribidi.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libfontconfig.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libfreetype.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libexpat.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libeet.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libjpeg.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_file.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore_con.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libcurl.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libgnutls.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libtasn1.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libz.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libgcrypt.so -lcap 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libgpg-error.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libedbus.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libecore.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libglib-2.0.so 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libeina.so -ldl 
/OE/shr-core/tmp-eglibc/sysroots/nokia900/usr/lib/libdbus-1.so -lpthread -lrt 
-lm -pthread -Wl,-rpath -Wl,/usr/lib/../lib
OE @ 
~/shr-core/tmp-eglibc/work/armv7a-vfp-neon-oe-linux-gnueabi/eve-0.3.0.0+svnr67278-r2/eve/src/bin
 $ ls -lah eve.link.libtool 
-rw-r--r-- 1 bitbake bitbake 57M Jan 18 08:03 eve.link.libtool

but doesn't fail like qemux86-64 does.

I'm uploading eve.link.libtool debug output to
http://build.shr-project.org/tests/jama/gcc-issue/eve.link.libtool
but it will take few more minutes..

Cheers,
-- 
Martin 'JaMa' Jansa     jabber: [email protected]

Attachment: signature.asc
Description: Digital signature

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Reply via email to