[Pythonmac-SIG] Upgraded to 2.4 and can't make it work

Kent Quirk kquirk at solidworks.com
Fri May 27 15:31:38 CEST 2005


I can't find where you said that extensions shouldn't be linking to
Python at all. I also can't understand how this could be the case, at
least if we're building the extensions using Boost.Python (which we
are).

I've tried to build without linking to it, and it compiles but I end up
with a bunch of missing symbols from Python.

When we started this whole project about a year and a half ago,
distutils basically didn't work. We now have several extensions and over
100K lines of complex C++ code distributed in several hundred files in a
cross-platform application. We had a difficult enough time getting XCode
to handle it. After staring at what passes for distutils documentation
for a while, I can't even figure out if it will handle a Boost.Python
extension, and trying to get it to do our complete build seems like
great way to waste several days.

We finally did it manually. After the call to setup(), our setup.py
iterates over the constructed modules in the built .app using macholib
to find all the occurrences of /Libraries/Frameworks/Python.framework
etc and convert them to @executable_path/../Frameworks. 

What I had hoped for was some hint along the lines of "here's how you
can convince py2app to do that for you automatically."

OS X documentation is generally of the class that you only know what you
need to know after you've already found it (and tried a zillion wrong
answers). It's really pretty horrible to figure this stuff out for the
first time.

We'd like to do things "right", but The One True Way is a hard path to
find and follow. Maybe after you've already trod it, you can look back
and say "that was obvious", but it sure isn't obvious when you're
working your way along it for the first time.

	Kent


-----Original Message-----
From: Bob Ippolito [mailto:bob at redivi.com] 
Sent: Thursday, May 26, 2005 1:48 PM
To: Kent Quirk
Cc: pythonmac-sig at python.org
Subject: Re: [Pythonmac-SIG] Upgraded to 2.4 and can't make it work


As I said before, your extensions shouldn't be linking to Python *at  
all*.  Read that part again, and fix the way your extensions are  
getting linked.

(and this is why people should use distutils to link their  
extensions, because it knows how to link things right)

-bob



More information about the Pythonmac-SIG mailing list