Re: [Pyobjc-dev] New beta release for pyobjc: 2.2b2
Brought to you by:
ronaldoussoren
From: Ronald O. <ron...@ma...> - 2009-05-27 21:10:05
|
On 27 May, 2009, at 8:25, friendship7 wrote: > 2009/5/26 Ronald Oussoren <ron...@ma...>: >> >> The compiler isn't that smart. If the linker looks for a library >> and stops >> at the first filename that matches without looking if it is for the >> right >> architecture. That means that if you happen to have a PPC library in >> /usr/local/lib and the compiler was actually looking for an intel >> one the >> search stops at the PPC library and you get a link error. >> >> If you have installed Python using the installer from the >> python.org site >> the situation is slightly more complicated: that installs a universal >> binary, which is a fat binary that contains both intel and ppc >> versions of >> the code. This means that all libraries that get linked into >> extensions must >> also be universal binaries and if they aren't you'll get link errors. > > Oh, please, I'm in this situation: python 2.6 from python.org, OSX > 10.5. > Two things: setuptools (if I'm right) build C extensions against the > 10.4u SDK and > not 10.5, and chokes on intel only libraries that it needs to link the > stub against. > > Where, in python, setuptools I think, can I tweak those compiler > defaults: > > -isysroot /Developper/.../10.4u > -arch i386 -arch ppc > > to: > > -isysroot /Developper/.../10.5 > -arch i386 > > I know pyobjc will fail compiling if I can't change it. I provide precompiled binaries that will be used if you have Python 2.6.2 from the python.org site (that's what I used to build those eggs). It seems that 2.6.1 still contains a bug that makes it use the wrong platform string in distutils, which might explain your problem. I'm also looking in a way to make the build machinary not look into / usr/local for dependencies, but that's harder than I'd like. Ronald |