Hi,

I've been playing with the latest alpha release of libtool and have come 
across this issue.
When linking a shared library (for a dynamically loaded module), the 
project I'm working on uses code from a subdirectory that has been 
compiled into an archive library (.a).

So the link line is something like:

/bin/sh ./libtool --mode=link c++ -W -Wall -o module.la --module main.lo 
extra/libextra.a

This generates the following warning:

*** Warning: This library needs some functionality provided by 
extra/libextra.a.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have.

*** Warning: inter-library dependencies are not known to be supported.
*** All declared inter-library dependencies are being dropped.

*** Warning: libtool could not satisfy all declared inter-library
*** dependencies of module module.la.  Therefore, libtool will create
*** a static module, that should work as long as the dlopening
*** application is linked with the -dlopen flag.


Unfortunately I can't get the application to load the libshared.a file 
as a dynamic module (not unsurprising).  Even if I specify -dlopen on 
the command line it still barfs - but since darwin doesn't have a dlopen 
call and I'm using wrapper library (dlcompat) this flag probably does 
nothing.

I'm just wondering why it can't just suck the object files out of the 
archive when linking the shared library?  That seems to be how it works 
on other platforms.  Is it a problem with the object code not being 
relocatable?

Alternatively I can compile the subdir as a shared library, but that 
means I need to use inter library dependencies when module loading - 
which doesn't seem to be supported??  (And besides, I don't want to have 
to distribute a second library file).

Any suggestions or comments.  Is this a bug?

Thanks,

Chris Leishman



_______________________________________________
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool

Reply via email to