Opened 17 years ago
Last modified 16 years ago
#1321 assigned defect
Dynamic shared library libcfitsio not referred to most portably in Mac OS X
| Reported by: | Michael Wood-Vasey | Owned by: | eugene |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | psconfig | Version: | |
| Severity: | normal | Keywords: | |
| Cc: |
Description
On Aug 30, 2009, at 16:10 , Michael Wood-Vasey wrote:
My compilation of today's SVN head (r25223) on my Mac Pro (Intel) failed with
---
[serenity ippdb.src] psautogen
You must have installed to compile ippdb.
Download the appropriate package for your distribution,
or get the source tarball at http://ftp.gnu.org/gnu/libtool/
---
Is this a libtool issue?
I installed the distribution version of libtool, and compilation went fine, but now I get missing dylib library errors:
---
[serenity psconfig] ppSub
dyld: Library not loaded: libcfitsio.dylib
Referenced from: /Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/bin/ppSub
Reason: image not found
Trace/BPT trap
[serenity psconfig] echo $CFITSIO
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86
[serenity psconfig] ls /Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/*cfits*
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libcfitsio.a
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libcfitsio.dylib*
[serenity psconfig] echo $LD_LIBRARY_PATH
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib:/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/mysql:/usr/local/lib:/usr/lib:/usr/X11R6/lib:/sw/lib:
[serenity psconfig] otool -D /Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libcfitsio.dylib*
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libcfitsio.dylib:
libcfitsio.dylib
[serenity psconfig] otool -L /Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libcfitsio.dylib
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libcfitsio.dylib:
libcfitsio.dylib (compatibility version 0.0.0, current version 0.0.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.1.4)
[serenity psconfig] otool -L /Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/bin/ppSub
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/bin/ppSub:
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libppStats.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libpsphot.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libpsmodules.1.dylib (compatibility version 2.0.0, current version 2.1.0)
/Volumes/data/PS1/src/ipp-2.9/Ohana/src/libkapa/lib/libkapa.darwin_x86.dylib (compatibility version 0.0.0, current version 0.0.0)
/Volumes/data/PS1/src/ipp-2.9/Ohana/src/libdvo/lib/libdvo.darwin_x86.dylib (compatibility version 0.0.0, current version 0.0.0)
/Volumes/data/PS1/src/ipp-2.9/Ohana/src/libfits/lib/libFITS.darwin_x86.dylib (compatibility version 0.0.0, current version 0.0.0)
/Volumes/data/PS1/src/ipp-2.9/Ohana/src/libohana/lib/libohana.darwin_x86.dylib (compatibility version 0.0.0, current version 0.0.0)
/usr/X11/lib/libX11.6.dylib (compatibility version 9.0.0, current version 9.0.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libpng12.0.dylib (compatibility version 16.0.0, current version 16.0.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libnebclient-0.17.dylib (compatibility version 0.0.0, current version 0.0.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libpslib.1.dylib (compatibility version 2.0.0, current version 2.1.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/mysql/libmysqlclient.15.dylib (compatibility version 16.0.0, current version 16.0.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
libcfitsio.dylib (compatibility version 0.0.0, current version 0.0.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libfftw3f.3.dylib (compatibility version 4.0.0, current version 4.1.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libgsl.0.dylib (compatibility version 13.0.0, current version 13.0.0)
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib/libgslcblas.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.1.4)
/usr/lib/libmx.A.dylib (compatibility version 1.0.0, current version 292.4.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
[serenity psconfig] otool -L /Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/bin/ppSub | grep cfitsio
libcfitsio.dylib (compatibility version 0.0.0, current version 0.0.0)
[serenity lib] pwd
/Volumes/data/PS1/code/ipp-2.9/default.darwin_x86/lib
[serenity lib] ppSub
2009-08-30 21:41:13Z|serenity.phyast.pitt.edu|I|ppSub
ppSub at 2009-08-30T21:41:47.677001
2009-08-30 21:41:13Z|serenity.phyast.pitt.edu|I|ppSub
psLib trunk/psLib@25223M from 60eb6cdc-a59c-4636-a4e0-dba66a9721fd, built Aug 30 2009, 16:14:57 with cfitsio-3.100 gsl-1.11 fftw-3.0.1 mysql-5.0.51a optimised without trace
2009-08-30 21:41:13Z|serenity.phyast.pitt.edu|I|ppSub
psModules trunk/psModules@25223 from 60eb6cdc-a59c-4636-a4e0-dba66a9721fd, built Aug 30 2009, 16:16:22 optimised with nebclient
2009-08-30 21:41:13Z|serenity.phyast.pitt.edu|I|ppSub
psphot trunk/psLib@25223M from 60eb6cdc-a59c-4636-a4e0-dba66a9721fd, built Aug 30 2009, 16:17:12 optimised with libkapa
2009-08-30 21:41:13Z|serenity.phyast.pitt.edu|I|ppSub
ppStats trunk/ppStats@25223 from 60eb6cdc-a59c-4636-a4e0-dba66a9721fd, built Aug 30 2009, 16:16:44 optimised
2009-08-30 21:41:13Z|serenity.phyast.pitt.edu|I|ppSub
ppSub trunk/ppSub@25223 from 60eb6cdc-a59c-4636-a4e0-dba66a9721fd, built Aug 30 2009, 16:19:28 optimised
Pan-STARRS PSF-matched image subtraction
Usage: ppSub OUTPUT_ROOT
[-psf REFERENCE.psf.fits]
This subtracts the convolved REFERENCE from the INPUT, by default.
Optional arguments, with default values:
RECIPES OPTIONS -inimage () Input image
-inmask () Input mask image
-invariance () Input variance image
-insources () Input source list
-refimage () Reference image
-refmask () Reference mask image
-refvariance () Reference variance image
-refsources () Reference source list
-kernel () Precalculated kernel to apply
-stats () Statistics file
-stamps () Stamps filename; x,y on each line
-threads (0) Number of threads
-dumpconfig () file to dump configuration to
-convolve (0) Image to convolve [1 or 2]
-photometry (FALSE) Perform photometry?
-inverse (FALSE) Generate inverse subtractions?
-visual (FALSE) Show diagnostic plots
---
So I think my concern is that 'libcfitsio.dylib' is not fully specified in the ppSub executable and it's not in the default dynamic library paths. See the helpful post at
http://lists.apple.com/archives/xcode-users/2009/Aug/msg00165.html
for some details on how this works. You can muck around with environment variables to try to help find dylib paths, but that actually tends to cause problems when loading just normal programs. It's my understanding that the "correct" thing to do is install the dynamic library with the path of:
@executable_path/../lib/libcfitsio.dylib
In the ideal world this makes the directory completely portable. You can just move the directory around and all the paths are still find. This is how Mac OS X handles application bundles.
Change History (1)
comment:1 by , 16 years ago
| Component: | build → psconfig |
|---|---|
| Owner: | changed from to |
| Status: | new → assigned |
