libtool
[Top][All Lists]
Advanced

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

Re: Link error for blahS.c when used in multiple GCC environment.


From: Ralf Wildenhues
Subject: Re: Link error for blahS.c when used in multiple GCC environment.
Date: Tue, 3 Apr 2007 00:05:10 +0200
User-agent: Mutt/1.5.13 (2006-08-11)

* Brendon Costa wrote on Mon, Apr 02, 2007 at 11:42:29PM CEST:
> Ok, I installed libtool 1.5.23b and re-bootstrapped my example project.

Thanks for all the data.  Upon reading, I'm a bit embarassed to see that
I could have asked a better question earlier; sorry about that.

> /usr/pkg/bin/bash ../../../libtool --tag=CXX --mode=link g++  -g -O2
> -L/home/bcosta/gcc/install/lib -o library_user  library_user-main.o
> ../../../src/libs/myshared/libmyshared.la
> ../../../src/libs/mystatic/libmystatic.la ../../../libltdl/libltdlc.la
> -dlopen ../../../src/plugins/myplugin/myplugin.la

Am I right in that you have both a static and a shared library that both
link against libstdc++?  If yes, why are you doing this (the static lib)?

I bet it's the libstdc++.a coming into play...

> mkdir .libs
> rm -f .libs/library_user.nm .libs/library_user.nmS .libs/library_user.nmT
> creating .libs/library_userS.c
> extracting global C symbols from
> `../../../src/plugins/myplugin/.libs/myplugin.a'
> extracting global C symbols from
> `/home/bcosta/gcc/example/src/libs/mystatic/.libs/libmystatic.a'
> extracting global C symbols from `/home/bcosta/gcc/install/lib/libstdc++.a'

...here, that is causing the problems.  I am also very doubtful that
such a setup is actually supported by libstdc++.

> (cd .libs && gcc -c -fno-builtin "library_userS.c")
> rm -f .libs/library_userS.c .libs/library_user.nm .libs/library_user.nmS
> .libs/library_user.nmT
> g++ -g -O2 -o .libs/library_user library_user-main.o
> .libs/library_userS.o  -L/home/bcosta/gcc/install/lib
> -L/home/bcosta/gcc/build/i386-unknown-netbsdelf3.0/libstdc++-v3/src
> -L/home/bcosta/gcc/build/i386-unknown-netbsdelf3.0/libstdc++-v3/src/.libs
> -L/home/bcosta/gcc/build/gcc
> ../../../src/plugins/myplugin/.libs/myplugin.a
> /home/bcosta/gcc/example/src/libs/mystatic/.libs/libmystatic.a -lm
> ../../../src/libs/myshared/.libs/libmyshared.so
> ../../../src/libs/mystatic/.libs/libmystatic.a
> /home/bcosta/gcc/install/lib/libstdc++.so
> ../../../libltdl/.libs/libltdlc.a -Wl,--rpath -Wl,/usr/local/lib
> -Wl,--rpath -Wl,/home/bcosta/gcc/install/lib
> .libs/library_userS.o(.rodata+0x8414): undefined reference to
> `__gnu_internal::palloc_init_mutex'
[...]

Cheers,
Ralf




reply via email to

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