[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