* Olly Betts wrote on Wed, Sep 21, 2005 at 11:00:30PM CEST: > On Wed, Sep 21, 2005 at 10:45:40PM +0200, Ralf Wildenhues wrote: > > * Thorsten Glaser wrote on Wed, Sep 21, 2005 at 10:05:53PM CEST: > > > Olly Betts dixit: > > > >It looks like the problem is that "g++ -shared" doesn't link to > > > >libstdc++. > > > > > > gcc -shared creates a shared library. > > > > > > On OpenBSD, shared libraries do not link against other shared libraries. > > > The main programme must link against all these. > > Does that apply when using dlopen?
This is another, orthogonal question. But ltdl.m4:LT_SYS_DLOPEN_DEPLIBS has | openbsd*) | lt_cv_sys_dlopen_deplibs=yes | ;; so I would say yes (or above would need fixing as well). > When python dlopens _xapian.so, something automatically knows to > load libxapian.so.8.0 too - so there's definitely a working shared > library dependency mechanism in this case. Which confirms the above. > The bottom line for me is that if I explicitly add "-lstdc++" when > linking _xapian.so, it all works. If I don't, it doesn't. So I > kind of feel that ideally libtool should be doing that for me... ACK. I hate to break libtool on systems I cannot test, when the maintainers may have had good reasons to do something slightly differently than the default way, though. > > OK, but this is exactly one thing libtool was designed to do for you: > > keep track of the libraries you also have to link against; it should > > have added -lstdc++ to _xapian.la's dependency_libs. > > It definitely isn't doing that. This is what I have in _xapian.la: > > dependency_libs=' /home/olly/install/lib/libxapian.la' > > But unless python uses ltdl that wouldn't help me here anyway. See above. If lt_cv_sys_dlopen_deplibs were false, then yes, you would need to use ltdl in order for opening to work. Plus also the fix for postdeps. Cheers, Ralf _______________________________________________ http://lists.gnu.org/mailman/listinfo/libtool
