I'm using libtool (1.3.4) to create a shared C++ library on BeOS.
In the final linking stage, libtool drops all the libraries my
library depends on, resulting in a load of undefined reference
error messages.

| /bin/sh ../../../libtool --mode=link c++  -g -O2 -DSOBE_DEBUG=1 -fno-rtti 
|-fno-exceptions -W -Wall -Wno-unused -Wno-multichar  -L/boot/users/larsa/lib 
|-L/boot/users/larsa/lib -o libSoBe.la -rpath /boot/users/larsa/lib -no-undefined 
|-version-info 0:0:0 -release 0.1 SoBe.lo SoBeComponent.lo SoBeGLWidget.lo 
|SoBeRenderAreaExtra.lo SoBeRenderArea.lo common/libSoCommon.la 
|devices/libSoBeDevices.la extensions/libSoBeExtensions.la widgets/libSoBeWidgets.la 
|-lCoin -lMesaGL -lsimage -lpng -lz  -lbe
| rm -fr .libs/libSoBe.la .libs/libSoBe.* .libs/libSoBe-0.1.*
| 
| *** Warning: inter-library dependencies are not known to be supported.
| *** All declared inter-library dependencies are being dropped.
| *** The inter-library dependencies that have been dropped here will be
| *** automatically added whenever a program is linked with this library
| *** or is declared to -dlopen it.
| gcc -nostart  SoBe.o SoBeComponent.o SoBeGLWidget.o SoBeRenderAreaExtra.o 
|SoBeRenderArea.o  -Wl,--whole-archive common/.libs/libSoCommon.al 
|devices/.libs/libSoBeDevices.al extensions/.libs/libSoBeExtensions.al 
|widgets/.libs/libSoBeWidgets.al -Wl,--no-whole-archive   -Wl,-soname -Wl,libSoBe.so 
|-o .libs/libSoBe.so

Now, if I hardcode "deplibs_check_method=pass_all" into ltmain.sh,
the libraries are passed through to gcc, and the library links fine.

What's the status on this?  Is it just something that hasn't been checked
out, hence not implemented in libtool, am I missing a libtool option, or
will the hack I've done break down at a later stage so it can't be done like
this anyway?

  Lars J

Reply via email to