|
From: | Alessandro Vesely |
Subject: | Sticky --disable-shared |
Date: | Mon, 22 Sep 2008 07:26:09 +0200 |
User-agent: | Thunderbird 2.0.0.16 (Windows/20080708) |
Hi all,yesterday I compiled three packages, libgcrypt, gnutls and courier-mta, that use one another's library. I started off building gcrypt as a static library to avoid cross-problems with the stable debian version of the same package being use by the running mail server. Then, I got an error building gnutls: The linker couldn't resolve the cry_... references to libgcrypt functions.
I write to ask if that's a bug or a feature, and if it belongs to libtool, gcc, or ld. The command "libtool ... -lgcrypt ..." was being changed to "gcc ... /usr/local/lib/libgcrypt.a ... -Wl,--rpath -Wl,/usr/local/lib" and resulted in an ld error. (Why?) A command line like "gcc ... -lgcrypt ...", reversing libtool's hard path, succeeded. I've only been able to cleanly build gnutls after configuring with --disable-shared. Ditto for courier-mta, with exchanged roles. Curiously, the latter package sports no shared libraries, thus the option must be a leftover from boilerplate (libtool?) stuff.
I think static libraries are probably safer in this case, where each package has a different version. However, I'm not sure why it is just not possible to build shared ones. Any clue?
TIA Ale
[Prev in Thread] | Current Thread | [Next in Thread] |