This is the mail archive of the
automake@gnu.org
mailing list for the automake project.
Problem with shared librairies and linking
- From: Antoine Duval <aduval at altern dot org>
- To: automake at gnu dot org
- Date: Fri, 9 May 2003 18:50:30 +0000
- Subject: Problem with shared librairies and linking
Hi,
Could anybody can help me on the following problem ?
// compilling and installing a first library named rtpi
[antoine@irsilr14 rtpi]$ autoconf && automake && ./configure --prefix=/usr &&
make && make install
// everything seems to be ok
// now a prog named mlb
[antoine@irsilr14 rtpi]$ cd ~/mlb
[antoine@irsilr14 mlb]$ autoconf && automake && ./configure --prefix=/usr
[antoine@irsilr14 mlb]$ make
[...]
g++ -o mlb [*.o] -laudio -lsmp -lMagick -lMagick++ -ltcl8.4 -lfreetype -lttf
-lrtpi
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../librtpi.so: undefined
reference to `TclTimerManager::Tcl_CreateTimerHandler(int, void (*)(void*),
void*)'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../librtpi.so: undefined
reference to `TclTimerManager::Tcl_DeleteTimerHandler(long)'
collect2: ld returned 1 exit status
make: *** [mlb] Erreur 1
// there something wrong here
// but i link with rtpi and rtpi has been previously linked with tcl8.4 which
provied thoses functions.
[antoine@irsilr14 mlb]$ cd ~/rtpi
[antoine@irsilr14 rtpi]$ cat Makefile.am | grep LIBADD
librtpi_la_LIBADD = -ltcl8.4
[antoine@irsilr14 rtpi]$ ldd /usr/lib/librtpi.so
libtcl8.4.so => /usr/lib/libtcl8.4.so (0x40067000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40100000)
[...]
[antoine@irsilr14 rtpi]$ objdump -t /usr/lib/libtcl8.4.so | grep
Tcl_CreateTimerHandler
0006fabe g F .text 000000f2 Tcl_CreateTimerHandler
Any idea ?
Antoine