[Gtk-osx-users] Library dependencies of PyGTK on Mac OS X



Hi all

I'm progressing with my job of bundling GTK into our PyGTK-based 
application (ASCEND) on Mac OS X.

I have written a script to copy all the PyGTK-related files into a 
'gtk.bundle' that will  live with our /Applications/ASCEND.app/Contents 
subdirectory.

http://ascendwiki.cheme.cmu.edu/Porting_to_Mac#Finding_all_the_GTK_files

The problem is that the PyGTK libraries that I have on my system, which 
I think were installed in /Library/Python/2.5/site-packages/gtk-2.0/ by 
jhbuild, reference the original ~/gtk/inst directory where the GTK 
libraries *originally* were.

What I need is for the PyGTK libraries to reference the libraries using 
relative file paths (ideally just the library filename with no path), 
and for the loading to make use of DYLD_LIBRARY_PATH which I can then 
set at runtime to the correct relative file path within my application 
bundle.

This problem is a problem across all jhbuild libs, as far as I can see, 
because:

otool -L /Library/Python/2.5/site-packages/gtk-2.0/gtk/_gtk.so
/Library/Python/2.5/site-packages/gtk-2.0/gtk/_gtk.so:
    /Users/john/gtk/inst/lib/libgtk-quartz-2.0.0.dylib (compatibility 
version 1601.0.0, current version 1601.2.0)
    /Users/john/gtk/inst/lib/libgdk-quartz-2.0.0.dylib (compatibility 
version 1601.0.0, current version 1601.2.0)
    /Users/john/gtk/inst/lib/libatk-1.0.0.dylib (compatibility version 
2610.0.0, current version 2610.1.0)
1601.2.0)
[....and many more....]

as well as

tool -L /Users/john/gtk-temp/inst/lib/libgtk-quartz-2.0.0.dylib
/Users/john/gtk-temp/inst/lib/libgtk-quartz-2.0.0.dylib:
    /Users/john/gtk/inst/lib/libgtk-quartz-2.0.0.dylib (compatibility 
version 1601.0.0, current version 1601.2.0)
    /Users/john/gtk/inst/lib/libgdk_pixbuf-2.0.0.dylib (compatibility 
version 1601.0.0, current version 1601.2.0)
    /Users/john/gtk/inst/lib/libgdk-quartz-2.0.0.dylib (compatibility 
version 1601.0.0, current version 1601.2.0)
[...and many more...]

So basically, I need a way for this linking to be done without absolute 
pathnames, somehow (as it is in Linux, in general).

Any suggestions?

Cheers
JP






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]