Hello, I have thought so far that if you want to make a DLL, you can't get involved with any other library, because libtool needs -no-undefined flag in order to make DLLs and you are supposed to use it only if the library is self-contained. I was quite surprised when I have cheated libtool, supplied the -no-undefined parameter and it worked although I thought that it shouldn't and after some investigation, I have stumbled across an old mailing list thread, where another person had the same issue: http://lists.gnu.org/archive/html/libtool/2006-03/msg00012.html Having looked at the documentation thoroughly, I had to admit that the documentation is correct, but if you try to read through it quickly, it is likely that you leave with the impression expressed in the beginning of this e-mail. Therefore I suggest that you stress this in the documentation, feel free to use this patch (there is also a patch if you look at the old message). Regards, Matej
diff --git a/doc/libtool.texi b/doc/libtool.texi index cd5a181..e11cada 100644 --- a/doc/libtool.texi +++ b/doc/libtool.texi @@ -1517,7 +1517,8 @@ of library paths. Useful if the program is only used in the build tree, e.g., for testing or generating other files. @item -no-undefined -Declare that @var{output-file} does not depend on any other libraries. +Declare that @var{output-file} does not depend on any other libraries +in the sense that after linking it will not have any unresolved symbols. Some platforms cannot create shared libraries that depend on other libraries (@pxref{Inter-library dependencies}). @@ -3263,7 +3264,8 @@ library systems and simple dynamic library systems. Some platforms, such as AIX, do not even allow you this flexibility. In order to build a shared library, it must be entirely -self-contained (that is, have references only to symbols that are found +self-contained or it must have dependencies known at the link time +(that is, have references only to symbols that are found in the @file{.lo} files or the specified @samp{-l} libraries), and you need to specify the @option{-no-undefined} flag. By default, libtool builds only static libraries on these kinds of platforms. _______________________________________________ http://lists.gnu.org/mailman/listinfo/libtool