bug-guile
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Mac OS X .dylib not working


From: Hans Aberg
Subject: Re: Mac OS X .dylib not working
Date: Thu, 4 Feb 2010 16:21:27 +0100

On 4 Feb 2010, at 14:49, Peter O'Gorman wrote:

What does otool -L
/Applications/LilyPond.app/Contents/Resources/bin/guile say? Which
libltdl.7.dylib does it list?

See below. They differ: libltdl.7.dylib current versions 10.0.0 and 10.1.0.

If you run lilypond with DYLD_PRINT_LIBRARIES=1 set in the environment
does more than one copy of libltdl.7.dylib get loaded?

It just tries to load the one in /usr/local/lib/, which causes segmentation fault.

This sounds like a packaging bug to me though, ...

Part if it, at least. There is no point searching for incompatible libraries.

...you can probably fix it
with use of install_name_tool(1).

I can pass it on - I'm not a LilyPond developer.

As for your earlier questions about .so and .dylib - On Mac OS X 10.0
and earlier, there was no way to load MH_DYLIB type files (usually
.dylib extensions) at runtime. API was introduced to allow this in 10.1, and dlopen() was added in 10.3, rewritten in 10.4 and dlclose() actually
removes the image in 10.5, prior to that only files of MH_BUNDLE type
could be unloaded.

When libtool support for Mac OS X was added, there was no way to load
.dylib files, not much software had any knowledge of Mac OS X, and quite a lot of things had hardcoded ".so" when loading files at runtime, so to accomodate this, .so was chosen as the extension when creating loadable
modules (MH_BUNDLE) and .dylib when creating MH_DYLIB. Changing
this now would cause far too many problems.

Not really: 10.4 and earlier are obsolete, and 10.5 is becoming. On 10.5, just ordinary load is fine.

So just add .dylib to the list of searches.

So, long story short, ltld looks for ".so" because that is the extension
used for loadable modules.

Well, that is not a part of the UNIX standard, and therefore not POSIX, which is nowadays a subset.

Guile wants to use its loadable modules as
input to ld, this is not portable to ancient Mac OS X, nor ancient Net
BSD, and possibly other systems, however it seems unlikly to be a major
issue.

I think that covers most of the thread, but I admit to now reading all
of it.


If it can't load .dylib files, which now is the normal use, that is a bit confusing.

  Hans


----
# otool -L /Applications/LilyPond.app/Contents/Resources/bin/guile
/Applications/LilyPond.app/Contents/Resources/bin/guile:
@executable_path/../lib//libguile.17.dylib (compatibility version 21.0.0, current version 21.1.0) @executable_path/../lib//libintl.8.dylib (compatibility version 9.0.0, current version 9.0.0) /usr/lib/libiconv.2.dylib (compatibility version 5.0.0, current version 5.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 71.1.3) @executable_path/../lib//libgmp.3.dylib (compatibility version 8.0.0, current version 8.1.0) @executable_path/../lib//libltdl.7.dylib (compatibility version 10.0.0, current version 10.0.0) /usr/lib/libmx.A.dylib (compatibility version 1.0.0, current version 47.1.0)

# otool -L /usr/local/bin/guile
/usr/local/bin/guile:
/usr/local/lib/libguile.17.dylib (compatibility version 21.0.0, current version 21.1.0) /usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0) /usr/local/lib/libintl.8.dylib (compatibility version 9.0.0, current version 9.2.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.1.4) /usr/local/lib/libgmp.3.dylib (compatibility version 9.0.0, current version 9.0.0) /usr/local/lib/libltdl.7.dylib (compatibility version 10.0.0, current version 10.1.0) /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
----
$ lilypond empty.ly
dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/lilypond
dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libintl.8.dylib
dyld: loaded: /usr/lib/libSystem.B.dylib
dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libguile.17.dylib dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libgmp.3.dylib dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libpangoft2-1.0.0.dylib dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libpango-1.0.0.dylib dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libfreetype.6.dylib dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libfontconfig.1.dylib dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libgobject-2.0.0.dylib dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libgmodule-2.0.0.dylib dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libglib-2.0.0.dylib
dyld: loaded: /usr/lib/libstdc++.6.dylib
dyld: loaded: /usr/lib/libgcc_s.1.dylib
dyld: loaded: /usr/lib/libmx.A.dylib
dyld: loaded: /usr/lib/libiconv.2.dylib
dyld: loaded: /System/Library/Frameworks/CoreFoundation.framework/ Versions/A/CoreFoundation
dyld: loaded: /usr/lib/system/libmathCommon.A.dylib
dyld: loaded: /usr/lib/libicucore.A.dylib
dyld: loaded: /usr/lib/libobjc.A.dylib
dyld: loaded: /usr/lib/libauto.dylib
dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libltdl.7.dylib
dyld: loaded: /usr/lib/libz.1.dylib
dyld: loaded: /Applications/LilyPond.app/Contents/Resources/bin/../ lib//libexpat.1.dylib dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Carbon dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/CarbonSound.framework/Versions/A/CarbonSound dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/CommonPanels.framework/Versions/A/CommonPanels dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/Help.framework/Versions/A/Help dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/HIToolbox.framework/Versions/A/HIToolbox dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/HTMLRendering.framework/Versions/A/HTMLRendering dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/ImageCapture.framework/Versions/A/ImageCapture dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/Ink.framework/Versions/A/Ink dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/NavigationServices.framework/Versions/A/NavigationServices dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/OpenScripting.framework/Versions/A/OpenScripting dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/Print.framework/Versions/A/Print dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/SecurityHI.framework/Versions/A/SecurityHI dyld: loaded: /System/Library/Frameworks/Carbon.framework/Versions/A/ Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/ApplicationServices dyld: loaded: /System/Library/Frameworks/CoreServices.framework/ Versions/A/CoreServices dyld: loaded: /System/Library/Frameworks/CoreAudio.framework/Versions/ A/CoreAudio dyld: loaded: /System/Library/Frameworks/CoreServices.framework/ Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore dyld: loaded: /System/Library/Frameworks/CoreServices.framework/ Versions/A/Frameworks/CFNetwork.framework/Versions/A/CFNetwork dyld: loaded: /System/Library/Frameworks/CoreServices.framework/ Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata dyld: loaded: /System/Library/Frameworks/CoreServices.framework/ Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices dyld: loaded: /System/Library/Frameworks/CoreServices.framework/ Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit dyld: loaded: /System/Library/Frameworks/CoreServices.framework/ Versions/A/Frameworks/AE.framework/Versions/A/AE dyld: loaded: /System/Library/Frameworks/CoreServices.framework/ Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices dyld: loaded: /System/Library/Frameworks/CoreServices.framework/ Versions/A/Frameworks/DictionaryServices.framework/Versions/A/ DictionaryServices dyld: loaded: /System/Library/Frameworks/IOKit.framework/Versions/A/ IOKit dyld: loaded: /System/Library/Frameworks/DiskArbitration.framework/ Versions/A/DiskArbitration
dyld: loaded: /usr/lib/libbsm.dylib
dyld: loaded: /System/Library/Frameworks/Security.framework/Versions/A/ Security dyld: loaded: /System/Library/Frameworks/SystemConfiguration.framework/ Versions/A/SystemConfiguration
dyld: loaded: /usr/lib/libsqlite3.0.dylib
dyld: loaded: /usr/lib/libresolv.9.dylib
dyld: loaded: /usr/lib/libxml2.2.dylib
dyld: loaded: /usr/lib/libxslt.1.dylib
dyld: loaded: /System/Library/Frameworks/Foundation.framework/Versions/ C/Foundation dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/ATS.framework/Versions/A/ATS dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/CoreText.framework/Versions/A/CoreText dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/QD.framework/Versions/A/QD dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/ SpeechSynthesis
dyld: loaded: /usr/lib/libcrypto.0.9.7.dylib
dyld: loaded: /System/Library/Frameworks/Accelerate.framework/Versions/ A/Accelerate dyld: loaded: /System/Library/Frameworks/Accelerate.framework/Versions/ A/Frameworks/vImage.framework/Versions/A/vImage dyld: loaded: /System/Library/Frameworks/Accelerate.framework/Versions/ A/Frameworks/vecLib.framework/Versions/A/vecLib dyld: loaded: /System/Library/Frameworks/Accelerate.framework/Versions/ A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib dyld: loaded: /System/Library/Frameworks/Accelerate.framework/Versions/ A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib dyld: loaded: /System/Library/Frameworks/Accelerate.framework/Versions/ A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib dyld: loaded: /System/Library/Frameworks/Accelerate.framework/Versions/ A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/ libJPEG.dylib dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/ libTIFF.dylib dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/ libGIF.dylib dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/ libPng.dylib dyld: loaded: /System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/ libRadiance.dylib
dyld: loaded: /usr/lib/libcups.2.dylib
dyld: loaded: /System/Library/Frameworks/Kerberos.framework/Versions/A/ Kerberos dyld: loaded: /System/Library/PrivateFrameworks/CoreUI.framework/ Versions/A/CoreUI dyld: loaded: /System/Library/Frameworks/QuartzCore.framework/Versions/ A/QuartzCore dyld: loaded: /System/Library/PrivateFrameworks/ DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv dyld: loaded: /System/Library/Frameworks/OpenGL.framework/Versions/A/ OpenGL dyld: loaded: /System/Library/Frameworks/OpenGL.framework/Versions/A/ Libraries/libGLImage.dylib
dyld: loaded: /usr/lib/libffi.dylib
dyld: loaded: /System/Library/Frameworks/CoreVideo.framework/Versions/ A/CoreVideo dyld: loaded: /System/Library/Frameworks/OpenGL.framework/Versions/A/ Libraries/libGLU.dylib dyld: loaded: /System/Library/Frameworks/OpenGL.framework/Versions/A/ Libraries/libGL.dylib dyld: loaded: /System/Library/Frameworks/OpenGL.framework/Versions/A/ Libraries/libGLProgrammability.dylib dyld: loaded: /System/Library/PrivateFrameworks/ InstallServer.framework/Versions/A/InstallServer
GNU LilyPond 2.13.7
dyld: loaded: /usr/local/lib/libguile-srfi-srfi-1-v-3.3.dylib
dyld: loaded: /usr/local/lib/libguile.17.dylib
dyld: loaded: /usr/local/lib/libintl.8.dylib
dyld: loaded: /usr/local/lib/libgmp.3.dylib
dyld: loaded: /usr/local/lib/libltdl.7.dylib
Segmentation fault
----





reply via email to

[Prev in Thread] Current Thread [Next in Thread]