bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/6753] New: -L order is not respected when searching for -l<libna


From: funtoos at yahoo dot com
Subject: [Bug ld/6753] New: -L order is not respected when searching for -l<libname>, but -T fixes it
Date: 20 Jul 2008 23:34:59 -0000

I am building with in prefix /home/devsk/portage and binutils is configured 
with:

./configure --prefix=/home/devsk/portage/usr --host=i686-pc-linux-gnu
--target=i686-pc-linux-gnu
--datadir=/home/devsk/portage/usr/share/binutils-data/i686-pc-linux-gnu/2.18.50.0.7
--infodir=/home/devsk/portage/usr/share/binutils-data/i686-pc-linux-gnu/2.18.50.0.7/info
--mandir=/home/devsk/portage/usr/share/binutils-data/i686-pc-linux-gnu/2.18.50.0.7/man
--bindir=/home/devsk/portage/usr/i686-pc-linux-gnu/binutils-bin/2.18.50.0.7
--libdir=/home/devsk/portage/usr/lib/binutils/i686-pc-linux-gnu/2.18.50.0.7
--libexecdir=/home/devsk/portage/usr/lib/binutils/i686-pc-linux-gnu/2.18.50.0.7
--includedir=/home/devsk/portage/usr/lib/binutils/i686-pc-linux-gnu/2.18.50.0.7/include
--enable-64-bit-bfd --enable-shared --disable-werror --disable-nls
--build=i686-pc-linux-gnu --disable-nls --with-gnu-ld --enable-debug=no
--disable-debug
-with-lib-path=/home/devsk/portage/lib:/home/devsk/portage/usr/lib:/home/devsk/portage/usr/X11R6/lib:/usr/X11R6/lib:/usr/lib:/lib
--x-includes=/home/devsk/portage/usr/include
--x-libraries=/home/devsk/portage/usr/lib

GCC is gcc-4.2.4

This link fails to find appropriate libfontconfig.so:

/home/devsk/portage/usr/bin/ld --verbose -v --eh-frame-hdr -m elf_i386
-dynamic-linker /lib/ld-linux.so.2 -o kdesktop_lock /usr/lib/crt1.o
/usr/lib/crti.o
/home/devsk/portage/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/crtbegin.o 
-L/home/devsk/portage/lib -L/home/devsk/portage/usr/lib
-L/home/devsk/portage/usr/kde/3.5/lib -L/home/devsk/portage/usr/qt/3/lib
-L/usr/X11R6/lib -L/usr/lib
-L/home/devsk/portage/usr/lib/gcc/i686-pc-linux-gnu/4.2.4
-L/home/devsk/portage/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/../../../../i686-pc-linux-gnu/lib
-L/home/devsk/portage/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/../../..
kdesktop_lock.all_cc.o ../.libs/libkdesktopsettings.a
../../kdmlib/.libs/libdmctl.a /home/devsk/portage/usr/kde/3.5/lib/libkio.so
/home/devsk/portage/usr/kde/3.5/lib/libkdeui.so
/home/devsk/portage/usr/kde/3.5/lib/libkdesu.so
/home/devsk/portage/usr/kde/3.5/lib/libkwalletclient.so
/home/devsk/portage/usr/kde/3.5/lib/libkdecore.so -L= -lutempter
/home/devsk/portage/usr/kde/3.5/lib/libDCOP.so -lresolv -lutil
/home/devsk/portage/usr/lib/libart_lgpl_2.so
/home/devsk/portage/usr/lib/libidn.so
/home/devsk/portage/usr/kde/3.5/lib/libkdefx.so
/home/devsk/portage/usr/qt/3/lib/libqt-mt.so -lmng -ljpeg -lpng -lfontconfig
/home/devsk/portage/usr/lib/libmng.so /home/devsk/portage/usr/lib/liblcms.so
/home/devsk/portage/usr/lib/libjpeg.so /home/devsk/portage/usr/lib/libXrandr.so
/home/devsk/portage/usr/lib/libXcursor.so
/home/devsk/portage/usr/lib/libXfixes.so /home/devsk/portage/usr/lib/libXft.so
/home/devsk/portage/usr/lib/libfontconfig.so
/home/devsk/portage/usr/lib/libfreetype.so
/home/devsk/portage/usr/lib/libexpat.so /home/devsk/portage/usr/lib/libpng12.so
/home/devsk/portage/usr/lib/libXrender.so -lz
/home/devsk/portage/usr/lib/libfam.so
/home/devsk/portage/usr/lib/libXxf86misc.so /usr/lib/libGLU.so
/home/devsk/portage/usr/lib/libSM.so /home/devsk/portage/usr/lib/libICE.so
/home/devsk/portage/usr/lib/libXmu.so /home/devsk/portage/usr/lib/libXt.so
/home/devsk/portage/usr/lib/libXext.so /home/devsk/portage/usr/lib/libXi.so
-lpthread -lGL /home/devsk/portage/usr/lib/libX11.so
/home/devsk/portage/usr/lib/libXau.so /home/devsk/portage/usr/lib/libXdmcp.so
-ldl --rpath /home/devsk/portage/usr/kde/3.5/lib --rpath
/home/devsk/portage/usr/lib --rpath /home/devsk/portage/usr/qt/3/lib --rpath
/home/devsk/portage/usr/kde/3.5/lib --rpath /home/devsk/portage/usr/lib --rpath
/home/devsk/portage/usr/qt/3/lib -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc
/home/devsk/portage/usr/lib/gcc/i686-pc-linux-gnu/4.2.4/crtend.o /usr/lib/crtn.o
> /tmp/tmper 2>&1

/home/devsk/portage/usr/lib is ahead of /usr/lib in -L search order but the
verbose output shows:

-lpng (/usr/lib/libpng.so)
attempt to open /home/devsk/portage/usr/kde/3.5/lib/libfontconfig.so failed
attempt to open /home/devsk/portage/usr/kde/3.5/lib/libfontconfig.a failed
attempt to open /home/devsk/portage/usr/qt/3/lib/libfontconfig.so failed
attempt to open /home/devsk/portage/usr/qt/3/lib/libfontconfig.a failed
attempt to open /usr/X11R6/lib/libfontconfig.so failed
attempt to open /usr/X11R6/lib/libfontconfig.a failed
attempt to open /usr/lib/libfontconfig.so succeeded
-lfontconfig (/usr/lib/libfontconfig.so)

The internal script has the SEARCH_DIR paths set correctly to specify 
/home/devsk/portage/usr/lib ahead of system paths.

If I invoke ld with -T and provide the same linker script explicitly, it finds
the libraries in correct order.

So, the internal script and external script provided to ldwith -T are same
(verified in --verbose mode) but their treatment is different. That's the bug.

-- 
           Summary: -L order is not respected when searching for -
                    l<libname>, but -T fixes it
           Product: binutils
           Version: 2.18
            Status: NEW
          Severity: normal
          Priority: P2
         Component: ld
        AssignedTo: unassigned at sources dot redhat dot com
        ReportedBy: funtoos at yahoo dot com
                CC: bug-binutils at gnu dot org


http://sourceware.org/bugzilla/show_bug.cgi?id=6753

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]