[Pythonmac-SIG] building universal binaries

Kevin Ollivier kevino at theolliviers.com
Fri Jan 27 07:22:34 CET 2006


Hi,

On Jan 26, 2006, at 7:22 PM, bear wrote:

> Ronald Oussoren wrote:
>> That part is easy enough. If you want a framework build you'll  
>> have to
>> patch Makefile.pre.in because it contains a hardcoded '-arch ppc' in
>> the section that builds that actual framework. Otherwise it should
>> just build (assuming you have an intel mac of course, cross-building
>> from PPC to Intel will be hard because the build process assumes
>> you'll do a native build).
> ok, I found the relevant part in configure (and cofigure.in) that was
> putting -arch_only ppc into the Makefile and I've re-run configure and
> it seems happy - heck, even the compiling ran error free.
>
> But when it got to the link part - I get the following error:
>
> ...<snip>...
> ranlib libpython2.4.a
> /usr/bin/install -c -d -m 755 Python.framework/Versions/2.4
> libtool -o Python.framework/Versions/2.4/Python -dynamic   
> libpython2.4.a \
>          -lSystem -lSystemStubs -install_name
> /Users/bear/projects/osaf/chandler/trunk/external/release/Library/ 
> Frameworks/Python.framework/Versions/2.4/Python
> -compatibility_version 2.4 -current_version 2.4
> ld64 failed: in libpython2.4.a(__.SYMDEF), not a valid ppc64 mach-o  
> file
> libtool: internal link edit command failed
> make: *** [Python.framework/Versions/2.4/Python] Error 1
>
> I must be missing something very basic.  The following is a small  
> script
> I've been using to test with:
>
> export SDK=/Developer/SDKs/MacOSX10.4u.sdk
> export TARGET_ARCH="" #" -arch i386 -arch ppc"
> export LDFLAGS="-L${PREFIX}/lib -isysroot ${SDK} ${TARGET_ARCH}"
> export PREFIX=/Users/bear/projects/release

I'm not certain if this is the main issue here or not, but if you are  
on an Intel Mac, don't change LDFLAGS at all - those changes are only  
needed for building Universal. Basically, as Ronald said, after  
removing the "-arch_only ppc" line you should be able to build as usual.

Kevin



More information about the Pythonmac-SIG mailing list