From: bwaters nrao.edu
Subject: install_name changing
Date: August 27, 2006 4:28:22 PM MDT
To: white cc.jyu.fi
Cc: pythonmac-sig python.org
Dan:
I saw your recent post on the Python-Mac SIG regarding the
difficulty
that you are having using libguide.dylib in a Python
application,
since you've built Python with the Intel compiler.
I think that you're on the right track with the
install_name_tool --
this is what I had to do to get the Intel binaries working:
> # cd /opt/intel/cc/9.1.029/lib
>
> # for i in *.dylib
> > do
> > install_name_tool -id $(pwd)/$i $i
> > done
>
Then I had to change the references to libirc.dylib in
libimf and
libsvml
> for i in libimf.dylib libsvml.dylib
> > do
> > install_name_tool -change libirc.dylib
$(pwd)/libirc.dylib $i
> > done
>
When I was done, this is what it looks like:
> $ otool -L /opt/intel/cc/9.1.029/lib/*.dylib
> /opt/intel/cc/9.1.029/lib/libguide.dylib:
> /opt/intel/cc/9.1.029/lib/libguide.dylib
(compatibility
> version 4.0.0, current version 4.0.0)
> /usr/lib/libSystem.B.dylib (compatibility
version 1.0.0,
> current version 88.1.3)
> /opt/intel/cc/9.1.029/lib/libguide_stats.dylib:
> /opt/intel/cc/9.1.029/lib/libguide_stats.dylib
> (compatibility version 4.0.0, current version 4.0.0)
> /usr/lib/libSystem.B.dylib (compatibility
version 1.0.0,
> current version 88.1.3)
> /opt/intel/cc/9.1.029/lib/libimf.dylib:
> /opt/intel/cc/9.1.029/lib/libimf.dylib
(compatibility
> version 0.0.0, current version 0.0.0)
> /opt/intel/cc/9.1.029/lib/libirc.dylib
(compatibility
> version 0.0.0, current version 0.0.0)
> /usr/lib/libSystem.B.dylib (compatibility
version 1.0.0,
> current version 88.1.3)
> /opt/intel/cc/9.1.029/lib/libirc.dylib:
> /opt/intel/cc/9.1.029/lib/libirc.dylib
(compatibility
> version 0.0.0, current version 0.0.0)
> /usr/lib/libSystem.B.dylib (compatibility
version 1.0.0,
> current version 88.1.3)
> /opt/intel/cc/9.1.029/lib/libsvml.dylib:
> /opt/intel/cc/9.1.029/lib/libsvml.dylib
(compatibility
> version 0.0.0, current version 0.0.0)
> /opt/intel/cc/9.1.029/lib/libirc.dylib
(compatibility
> version 0.0.0, current version 0.0.0)
>
>
Every dynamic library is referenced using the full path.
In my distribution, I have to re-distribute these libraries,
and put
them in /opt/intel/cc/9.1.029/lib on the client.
This is not the best option, but it works for the numerous
open-
source packages that we use for our image-processing system.
Good luck!
- boyd
Boyd Waters
Scientific Programmer
National Radio Astronomy Observatory
Socorro, New Mexico
http://www.aoc.nrao.edu/
_______________________________________________
Pythonmac-SIG maillist - Pythonmac-SIG python.org
http://mail.python.org/mailman/listinfo/pythonmac-sig
|