On Thu, Mar 3, 2011 at 2:32 PM, Hans Åberg <[email protected]> wrote: > [I'm not on the bug-libtool list, so please cc me.] > > Despite being reported a year ago, Guile can still not open dynamic libraries > ending with .dylib on Mac OS X. Looking throw the past discussion, it looks > as though developers of the one package hold the opinion that those of the > other package should do the fix. So I am merely reporting it, cross-linking, > so that you can figure out who guys should do the fix. :-) > > So guile-2.0.0 using libltdl.7.dylib of libtool-2.4, can on Mac OS X 10.6.6 > only open a dynamic library if the name of what it actually opens ends in .so > (say by making a soft link using 'ln -s'); if it ends in .dylib, it cannot > open it, even if the full name is given. > > See > http://lists.gnu.org/archive/html/bug-guile/2011-03/msg00008.html > http://lists.gnu.org/archive/html/guile-devel/2011-03/msg00021.html > > Mac OS X does not care about file name extensions; .dylib is just a > convention for native dynamic libraries. > > So the wanted behavior is to first try opening a library without adding an > extension, and then try out different endings. On Mac OS X, it would be best > trying out .dylib first - I haven't seen any other ending in use. > > Hans
I completely agree. FWIW, in section quoted below, the libtool manual appears to promise that lt_dlopenext() will respect the conventions of the host platform with regard to filename extensions for dynamic libraries. ... — Function: lt_dlhandle lt_dlopenext (const char *filename) The same as lt_dlopen, except that it tries to append different file name extensions to the file name. If the file with the file name filename cannot be found libltdl tries to append the following extensions: -- the libtool archive extension .la -- the extension used for native dynamically loadable modules on the host platform, e.g., .so, .sl, etc. ... from http://www.gnu.org/software/libtool/manual/html_node/Libltdl-interface.html#Libltdl-interface Cheers, Mike
