rpath confusion on mac os x 10.6

From: Tim Head <betatim_at_gmail.com>
Date: Thu, 28 Jan 2010 19:50:47 -0600


Hello,

I am trying to compile ROOT 5.26 on a mac running OS X 10.6.

The compile went fine, but when I tried to import ROOT in python I got a strange error message:

ImportError: dlopen(/Users/thead/homebrew/lib/libPyROOT.so, 2): Library not loaded: @rpath/libCore.so
  Referenced from: /Users/thead/homebrew/lib/libPyROOT.so   Reason: image not found

As the docs suggest that RPATH might be confusing, and I have no experience with it I thought the first thign to do is to disable it and see what happens. So I started from scratch, configuring with:

$ ./configure macosx64 --disable-afs --disable-alien --disable-astiff
--disable-bonjour --disable-castor --disable-chirp --disable-clarens
--disable-dcache --enable-fftw3
--with-fftw3-incdir=/Users/thead/homebrew/include/
--with-fftw3-libdir=/Users/thead/homebrew/lib/ --disable-gviz
--disable-gdml --disable-gfal --disable-g4root --disable-globus
--disable-glite --enable-gsl-shared
--with-gsl-incdir=/Users/thead/homebrew/include/
--with-gsl-libdir=/Users/thead/homebrew/lib/ --disable-hdfs
--disable-ldap --enable-mathmore --enable-minuit2 --disable-monalisa
--disable-mysql --disable-odbc --disable-opengl --disable-oracle
--disable-peac --disable-pgsql --disable-pythia6 --disable-pythia8
--enable-python --disable-qt --disable-qtgsi --enable-reflex
--disable-rfio --enable-roofit --disable-ruby --disable-sapdb
--enable-shared --disable-srp --enable-ssl --disable-table
--enable-unuran --disable-winrtdebug --disable-xrootd --enable-xft
--disable-rpath

However when I look at the output of the configure script:

Enabled support for asimage, builtin_afterimage, builtin_ftgl, builtin_freetype, builtin_pcre, builtin_zlib, cint5, cintex, editline, exceptions, genvector, gsl_shared, mathmore, memstat, minuit2, python, reflex, roofit, rpath, shared, ssl, tmva, unuran, xft, xml.

What am I missing?

On the topic of RPATH, I thought the whole point of it was to have the path compiled in at compile time, so why do we need the env variable DYLD_LIBRARY_PATH to point anywhere? Most things google finds on this topic seem to be CUDA and Mac OS related, both topics I know very little about. So if someone could shed some light I would be very thankful.

Tim

--

http://tim.jottit.com/ Received on Fri Jan 29 2010 - 02:50:52 CET

This archive was generated by hypermail 2.2.0 : Fri Jan 29 2010 - 23:50:01 CET