[Python-Dev] PEP 405 (pyvenv) and system Python upgrades
"Martin v. Löwis"
martin at v.loewis.de
Mon May 7 22:51:21 CEST 2012
More information about the Python-Dev mailing list
Mon May 7 22:51:21 CEST 2012
- Previous message: [Python-Dev] PEP 405 (pyvenv) and system Python upgrades
- Next message: [Python-Dev] PEP 405 (pyvenv) and system Python upgrades
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
> The bin/python3 executable in a framework is a small stub that > execv's the real interpreter that is stuffed in a Python.app bundle > inside the Python framework. That's done to ensure that GUI code can > work from the command-line, Apple's GUI framework refuse to work when > the executable is not in an application bundle. > > Because of this trick pyvenv won't know which executable the user > actually called and hence cannot find the pyvenv configuration file > (which is next to the stub executable). I don't understand. The "executable that the user actually called": does that refer to a) the stub (which the user *actually* called) or b) the eventual binary (which is what gets *actually* run). If a), then I think argv[0] just needs to continue to refer to the stub, which is easy to achieve in execv. If b), I wonder why the code needs to know the location to the binary inside the bundle. But if this is needed to know, I suggest that some environment variable is passed from the stub to the actual binary (akin PYTHONHOME). How does the stub normally find out where the framework is located? Regards, Martin
- Previous message: [Python-Dev] PEP 405 (pyvenv) and system Python upgrades
- Next message: [Python-Dev] PEP 405 (pyvenv) and system Python upgrades
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list