[Pythonmac-SIG] -Wl, -x in distutils module linking causes crashes

Jack Jansen Jack.Jansen at cwi.nl
Mon Sep 22 16:07:19 EDT 2003


On 22-sep-03, at 20:32, Bob Ippolito wrote:
>>> Because the "-Wl,-bind_at_load -flat_namespace -undefined suppress"
>>> is bit is really very bad practice.  It basically tells the linker
>>> "don't worry about any external symbol, and just hack something
>>> together at runtime".
>>
>> Right, as I wrote, we're moving away from this GNU libtool-based build
>> method.  That's just the standard set of flags libtool provides to get
>> behavior as other Unix platforms provide.  Aha!  I found this comment
>> in the libtool source:
>
> Yeah, I noticed this when I built Metakit.  As far as C++ global 
> constructors go, I think you pretty much do have to bind_at_load, but 
> I doubt you have to do flat_namespace.  It's probably possible to keep 
> the -Wl,-x, but add -Wl,"-exported_symbols_list somefile", but I don't 
> really see an advantage to that.

I'm confused now. At first I thought you meant "keep the -Wl,-x, it 
does no harm, just add -Wl,-bind_at_load and everything is fine", but 
when I re-read it I'm not so sure anymore.

And if the bind_at_load is needed for C++: is it a good idea to add it 
to the standard Python Makefile, so distutils will pick it up 
automatically, or are there adverse consequences to it?

--
Jack Jansen, <Jack.Jansen at cwi.nl>, http://www.cwi.nl/~jack
If I can't dance I don't want to be part of your revolution -- Emma 
Goldman




More information about the Pythonmac-SIG mailing list