I claimed on the recent conference call that Mac libraries are linked with
full path, unless they were linked with @rpath --- but never just the plain
library name.  Well, it looks like I'm wrong there.  I have the following
binary.  Sorry, I have no idea why CGAL was NOT linked like all the others.

```
mycomputer:build me$ otool -L grids/modele_ll
grids/modele_ll:
@rpath/libicebin.dylib (compatibility version 0.0.0, current version 0.0.0)
libCGAL.11.dylib (compatibility version 11.0.0, current version 11.0.1)
/Users/me/macports/mpgompi-4.9.3/lib/libgmp.10.dylib (compatibility version
14.0.0, current version 14.0.0)
/Users/me/macports/mpgompi-4.9.3/lib/libmpfr.4.dylib (compatibility version
6.0.0, current version 6.3.0)
/Users/me/macports/mpgompi-4.9.3/lib/libboost_thread-mt.dylib
(compatibility version 0.0.0, current version 0.0.0)
/Users/me/macports/mpgompi-4.9.3/lib/libboost_system-mt.dylib
(compatibility version 0.0.0, current version 0.0.0)
/Users/me/macports/mpgompi-4.9.3/lib/libboost_program_options-mt.dylib
(compatibility version 0.0.0, current version 0.0.0)
/Users/me/macports/mpgompi-4.9.3/lib/libboost_filesystem-mt.dylib
(compatibility version 0.0.0, current version 0.0.0)
/Users/me/macports/mpgompi-4.9.3/lib/libboost_date_time-mt.dylib
(compatibility version 0.0.0, current version 0.0.0)
@rpath/libnetcdf-cxx4.1.dylib (compatibility version 1.0.0, current version
1.0.2)
@rpath/libibmisc.dylib (compatibility version 0.0.0, current version 0.0.0)
/Users/me/macports/mpgompi-4.9.3/lib/libgcc/libstdc++.6.dylib
(compatibility version 7.0.0, current version 7.21.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version
1197.1.1)
/Users/me/macports/mpgompi-4.9.3/lib/libgcc/libgcc_s.1.dylib (compatibility
version 1.0.0, current version 1.0.0)
```

In any case, it looks like LD_LIBRARY_PATH changes (sort of) to
DYLD_LIBRARY_PATH on Mac:

http://lists.apple.com/archives/unix-porting/2005/May/msg00034.html

This is currently not being set by Lmod.  Although after my modules are
loaded, I can say:

```
 export DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH
```

Any thoughts on how this stuff would best be handled?  I'm inclined to
believe the "right" thing to do is to make all paths absolute, as stated in
the URL above.  However, maybe also modules should be set up to set
DYLD_LIBRARY_PATH on Mac?

-- Elizabeth

Reply via email to