unofficial mirror of bug-guile@gnu.org 
 help / color / mirror / Atom feed
From: Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
To: Hans Aberg <haberg@math.su.se>
Cc: bug-guile@gnu.org, Ken Raeburn <raeburn@raeburn.org>,
	bug-libtool@gnu.org
Subject: Re: Mac OS X .dylib not working
Date: Tue, 2 Feb 2010 10:52:35 -0600 (CST)	[thread overview]
Message-ID: <alpine.GSO.2.01.1002021046230.17824@freddy.simplesystems.org> (raw)
In-Reply-To: <675379A5-A6C5-4331-B82B-1E1F975C359A@math.su.se>

On Tue, 2 Feb 2010, Hans Aberg wrote:

> On 2 Feb 2010, at 15:20, Ken Raeburn wrote:
>
>>>>> On Mac OS X (trying it on 10.5.8 PPC G4), guile-1.8.7 cannot open
>>>>> dynamic library files with name extensions .dylib, but only if they
>>>>> are renamed using .so instead. On the Bug-Guile list they say it
>>>>> just calls libltdl, in the libtool package. I have installed latest
>>>>> of both, but the problem persists:
>>>> 
>>>> libtool should produce modules named *.so on Darwin if you pass the
>>>> -module flag at link time.  Typically, -avoid-version is used for
>>>> modules as well.
>>> 
>>> But dlopen() on Mac OS X can only open files in the native format, which 
>>> isn't ELF, and they are typically named with the .dylib file name 
>>> extension. If it finds a .so file on ELF format, all it does is reporting 
>>> it cannot be opened.
>> 
>> ".so" doesn't mean ELF format, and on some systems including Mac OS X, 
>> "dynamically linked shared library" (e.g., a ".dylib" file) is not the same 
>> as "dynamically loadable object".  Did you not see my earlier email to you 
>> and the bug-guile list?
>
> The fact is that currently Guile, which relies on libtool, cannot open .dylib 
> files, though it works perfectly if they are renamed .so. As for what 
> filenames to use, dlopen() does not care - it is something imposed by 
> libtool. Also, all new native DLLs (see below) on Mac OS X are named .dylib.

Unless I am missing something, the question to be answered is if Guile 
requests opening modules using a name like "module.so" (assuming a 
particular naming scheme), "module.la" (using libltdl as originally 
intended), or bare "module" (using libltdl heuristics, which tries 
several incantations, such as looking for .la, and .so).

OS-X's module loading does not care about the file extension.

Under OS-X (Leopard and later), the 'dtruss' program can be used to 
see what is really going on.

Bob
--
Bob Friesenhahn
bfriesen@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/

  reply	other threads:[~2010-02-02 16:52 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-01 14:26 Mac OS X .dylib not working Hans Aberg
2010-02-02  6:42 ` Ralf Wildenhues
2010-02-02  9:08   ` Hans Aberg
2010-02-02 14:20     ` Ken Raeburn
2010-02-02 15:48       ` Hans Aberg
2010-02-02 16:52         ` Bob Friesenhahn [this message]
2010-02-02 17:15           ` Hans Aberg
2010-02-02 18:01             ` Ludovic Courtès
2010-02-03 14:23               ` Ken Raeburn
2010-02-03 15:10                 ` Ludovic Courtès
2010-02-04 12:40           ` Hans Aberg
2010-02-04 13:49             ` Peter O'Gorman
2010-02-04 15:21               ` Hans Aberg
2010-02-04 15:34                 ` Peter O'Gorman
2010-02-04 16:52                   ` Hans Aberg
2010-02-04 16:58                   ` Hans Aberg
  -- strict thread matches above, loose matches on Subject: below --
2011-03-03 19:32 Hans Åberg
2011-03-03 19:56 ` Michael Ellis
2011-03-04  2:59   ` Peter O'Gorman
2011-03-04  3:41     ` Michael Ellis
2011-03-04  8:59     ` Andy Wingo
2011-03-04  9:44     ` Hans Aberg
2011-03-04 18:07       ` Peter O'Gorman
2011-03-04 18:47         ` Ralf Wildenhues
2011-03-04 19:00           ` Peter O'Gorman
2011-03-05 16:16             ` Peter O'Gorman
2011-03-04  3:00 ` Bob Friesenhahn
2011-03-04  3:48   ` Michael Ellis
2011-03-04 17:04     ` Ralf Wildenhues
2011-03-04  9:47   ` Hans Aberg
2011-03-03 19:53 Hans Aberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.GSO.2.01.1002021046230.17824@freddy.simplesystems.org \
    --to=bfriesen@simple.dallas.tx.us \
    --cc=bug-guile@gnu.org \
    --cc=bug-libtool@gnu.org \
    --cc=haberg@math.su.se \
    --cc=raeburn@raeburn.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).