Skip to content

Dynamic linking on Mac

Many dynamic libraries refer to the build tree.

(1) Every ".dylib" installed with GHC head refers to itself in its build directory. E.g.

% otool -L libHSbase-4.7.0.0-ghc7.7.20130909.dylib | grep base
libHSbase-4.7.0.0-ghc7.7.20130909.dylib:
	/Users/kazu/work/ghc/libraries/base/dist-install/build/libHSbase-4.7.0.0-ghc7.7.20130909.dylib (compatibility version 0.0.0, current version 0.0.0)

(2) Some ".dylib" installed with GHC head refers to other libraries in their build directories. E.g.

% otool -L libHSvector-0.9.1-ghc7.7.20130909.dylib | grep /Users
	/Users/kazu/work/ghc/libraries/vector/dist-install/build/libHSvector-0.9.1-ghc7.7.20130909.dylib (compatibility version 0.0.0, current version 0.0.0)
	/Users/kazu/work/ghc/libraries/primitive/dist-install/build/libHSprimitive-0.4.0.1-ghc7.7.20130909.dylib (compatibility version 0.0.0, current version 0.0.0)

(3) All user installed libraries by cabal-install refer to other libraries in their build directories. E.g.

% otool -L libHSghc-paths-0.1.0.9-ghc7.7.20130909.dylib| grep Users
	/Users/kazu/Library/Haskell/ghc-7.7.20130909/lib/ghc-paths-0.1.0.9/lib/libHSghc-paths-0.1.0.9-ghc7.7.20130909.dylib (compatibility version 0.0.0, current version 0.0.0)
	/Users/kazu/work/ghc/libraries/base/dist-install/build/libHSbase-4.7.0.0-ghc7.7.20130909.dylib (compatibility version 0.0.0, current version 0.0.0)
	/Users/kazu/work/ghc/libraries/integer-gmp/dist-install/build/libHSinteger-gmp-0.5.1.0-ghc7.7.20130909.dylib (compatibility version 0.0.0, current version 0.0.0)
	/Users/kazu/work/ghc/libraries/ghc-prim/dist-install/build/libHSghc-prim-0.3.1.0-ghc7.7.20130909.dylib (compatibility version 0.0.0, current version 0.0.0)
Trac metadata
Trac field Value
Version 7.7
Type Bug
TypeOfFailure OtherFailure
Priority highest
Resolution Unresolved
Component Build System
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information