[PATCH] lib: make notmuch shared library install_name be full path on Mac OS X

J. Lewis Muir jlmuir at imca-cat.org
Wed Mar 4 10:23:36 PST 2015


On 2/26/15 1:04 PM, Tomi Ollila wrote:
> The commit message is just (IMO) somewhat confusing; what is this
>
>   $ otool -L /opt/notmuch-current/lib/libnotmuch.dylib
>
> is there files /opt/notmuch-current/lib/libnotmuch.dylib and
> /opt/notmuch-current/lib/libnotmuch.3.dylib in the fs

Hi, Tomi.

Those files are actually known to you because they are what "make
install" installed.  The "./configure" script was invoked with the
option "--prefix=/opt/notmuch-current".

> and what does otool -L opt/notmuch-current/bin/notmuch output

The otool program is kind of like the ldd program on Unix-like OSes.
When invoked with the -L option, otool prints the shared libraries that
the object file uses.  When invoked on a shared library, it also shows
the install name of the shared library.  This is what I was trying to
show was not an absolute path.

In hindsight, maybe it would have been more clear if I had shown the
output of "otool -L" on the notmuch binary itself.  It would have shown
all the shared library dependencies with absolute paths except for
libnotmuch.dylib which was just the file name which is why the dynamic
linker couldn't find it when running the notmuch binary.  But I was
showing the "otool -L" output on libnotmuch.dylib because that was the
source of the problem (i.e. the install name was not set to an absolute
path).

I'm sorry for the confusing commit message.  As per David's subsequent
email on this thread, I'll try submitting again with a better one.

Regards,

Lewis


More information about the notmuch mailing list