[Gdal-dev] status of ldshared build? (or, other options for OSX framework build)

William Kyngesburye woklist at kyngchaos.com
Fri Nov 2 09:53:48 EDT 2007


This is all about the linking process to generate the GDAL framework  
binary, not it's usage...

On Nov 2, 2007, at 12:11 AM, Christopher Barker wrote:

> First,
>
> Thanks for all this OS-X work William!
>
>
>> it looks like libtool is simply getting in the way - it can't make  
>> a library file with a 'lib' prefix and '.dylib' extension.
>
> It sounds likethe OS-X port of libtool is broken and/or incomplete  
> -- are the libtool developers open to fixing this kind of stuff?
>
> I don't have my OS-X box in front of me, but is the lib* convention  
> not usually used with *.dylib? (ie,. it's either the old *nix  
> lib*.so or just *.dylib)
>
> Anyway, I'm pretty sure I've seen python extensions built against  
> *.dylibs before -- why do we need the lib*.dylib convention?
>
Libtool is not "broken", it just doesn't have the ability to directly  
create a binary of the framework style - no 'lib', no '.dylib'.  So  
the current GDAL makefile lets libtool do its thing, then renames it  
and changes its internal link path during installation.

>
>> And without knowing the exact path to the built python or installed  
>> python gdal libs (they're controlled by distutils/setuptools),  
>> there is no way to to postprocess them into framework binaries.
...
> I wonder if some of the complication is coming from the order that  
> we're using to do things -- if we did:
>
> build GDAL
> install GDAL lib (framework on OS-X)
> build python extensions (using installed GDAL)
> install python extensions
>
> would that work better? I guess I've see this kind of thing done two  
> ways:
>
Yes, that is a possibility.  But the current GDAL python setup.py  
doesn't work that way - it looks for the source-built copy of libgdal.

>> One possibility is for configure to somehow get from python the  
>> exact install path and store it in gdalmake.opt.
>
> I'd think there'd be some way to query distutils for this. This  
> looks like it:
>
> >>> distutils.sysconfig.get_python_lib()
> '/usr/lib/python2.5/site-packages'
>
That's a good possibility, and what I was looking for.  I'm just not  
up to speed yet on Python ;)

-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

Earth: "Mostly harmless"

- revised entry in the HitchHiker's Guide to the Galaxy





More information about the gdal-dev mailing list