[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: looks like bug
From: |
Robert Boehne |
Subject: |
Re: looks like bug |
Date: |
Fri, 11 May 2001 10:56:57 -0500 |
Arkadiusz:
I see a few problems here, first, you say you're using
libtool 1.4, but your library begs to differ:
> # Generated by ltmain.sh - GNU libtool 1.3.4 (1.385.2.196 1999/12/07 21:47:57)
Second, you appear to be installing in the build directory
because these lines:
> # Is this an already installed library?
> installed=yes
>
> # Directory that this library needs to be installed in:
> libdir='./'
According to the manual:
`-all-static'
If OUTPUT-FILE is a program, then do not link it against any
shared libraries at all. If OUTPUT-FILE is a library, then only
create a static library.
It seems that -all-static should not link any shared libraries, but
closer inspection shows that the gcc option '-static' is provided.
The -static option will not link to shared objects, so even though
the so is provided on the link line it won't get used.
Lastly, the error you're getting doesn't look like a libtool error
necessarily. I wonder if you can link this from the command line
without libtool. Perhaps -static is causing your executable to
statically link to glibc. Look into this and send us the results.
Thanks,
Robert
Arkadiusz Miskiewicz wrote:
>
> libtool 1.4 does strange thing:
> address@hidden libtool-test]$ ls -l
> razem 1336
> -rw-r--r-- 1 misiek users 704478 maj 2 15:28 libdb-3.1.a
> -rwxr-xr-x 1 misiek users 623 maj 10 20:16 libdb-3.1.la
> -rwxr-xr-x 1 misiek users 488304 maj 2 15:31 libdb-3.1.so
> -rwxr-xr-x 1 misiek users 147057 maj 10 09:09 libtool
> -rw------- 1 misiek users 127 maj 10 20:21 Makefile
> -rw------- 1 misiek users 25 maj 10 17:25 test.c
> address@hidden libtool-test]$ cat libdb-3.1.la
> # libdb-3.1.la - a libtool library file
#
> # Please DO NOT delete this file!
> # It is necessary for linking the library.
>
> # The name that we can dlopen(3).
> dlname=''
>
> # Names of this library.
> library_names='libdb-3.1.so libdb-3.1.so libdb-3.1.so'
>
> # The name of the static archive.
> old_library=''
>
> # Libraries that this one depends upon.
> dependency_libs=''
>
> # Version information for libdb-3.1.
> current=0
> age=0
> revision=0
>
> # Is this an already installed library?
> installed=yes
>
> # Directory that this library needs to be installed in:
> libdir='./'
> address@hidden libtool-test]$
>
> Note that there is no static library in old_library and now:
> address@hidden libtool-test]$ make
> gcc -c test.c
> /bin/sh libtool --mode=link gcc -o test -s -all-static test.o ./libdb-3.1.la
> ^^^^^^^^^^^
> gcc -o test -s -static test.o .//libdb-3.1.so -Wl,--rpath -Wl,./ -Wl,--rpath
> -Wl,./
> ^^^^^^^^^^^^^^^
> /usr/bin/ld: /lib/ld-linux.so.2: indirect symbol `__libc_internal_tsd_set' to
> `__libc_internal_tsd_set@@GLIBC_2.0' is a loop
> /lib/ld-linux.so.2: could not read symbols: Invalid operation
> collect2: ld returned 1 exit status
> make: *** [all] B³±d 1
> address@hidden libtool-test]$
>
> (this caused loop in linker; cvs version of ld from binutils detects such
> loop)
>
> IMVHO libtool shouldn't put libdb-3.1.so into gcc comand line. Am I right?
>
> --
> Arkadiusz Mi¶kiewicz, AM2-6BONE [ PLD GNU/Linux IPv6 ]
> http://www.t17.ds.pwr.wroc.pl/~misiek/ipv6/ [ enabled ]
>
> _______________________________________________
> Bug-libtool mailing list
> address@hidden
> http://mail.gnu.org/mailman/listinfo/bug-libtool
--
Robert Boehne Software Engineer
Ricardo Software Chicago Technical Center
TEL: (630)789-0003 x. 238
FAX: (630)789-0127
email: address@hidden