[Pythonmac-SIG] relocatable Python framework?

Boyd Waters bwaters at nrao.edu
Wed Sep 19 16:34:39 CEST 2007


On Sep 18, 2007, at 11:11 PM, Ronald Oussoren wrote:

>
> On 19 Sep, 2007, at 6:31, Boyd Waters wrote:
>
>> Maybe the user will drag our app bundle to /Applications, but maybe
>> not. I can't know where everything is until run-time.
>>
>> How to I ship the Python framework as a relocatable package inside
>> our application?
>
> You'll have to rewrite the loader commands of at least the command- 
> line interpreter. I guess the easiest way to do that is to use  
> a .app bundle and macho_standalone (part of macholib): Create a  
> (dummy) .app bundle by hand and use sys.executable (not the python  
> command) as the executable of that application bundle. Then use  
> macho_standalone to copy all libraries and frameworks used by the  
> application into the application bundle, this will rewrite the  
> loader commands as well.


Thanks very much, Ronald!

Not sure I understood all that, but I know where to dig now...

I see this in the comments in Modules/main.c:

> See Lib/plat-mac/bundlebuiler.py for details about the bootstrap
> 	   script.


I had thought this was a trivial matter, but now I see that it is a  
bit involved.

Our application already sets up the Python interpreter from a C++  
wrapper, so I suppose we already have a place to add hooks. Hmm.

If I come up with anything simple and clever, I'll post back to the  
list.

(If I come up with something embarrassing and stupid, maybe I'll keep  
it to myself...)

- boyd

  Boyd Waters
  programmer mac guy
  National Radio Astronomy Observatory
  http://www.aoc.nrao.edu/~bwaters




More information about the Pythonmac-SIG mailing list