[Pythonmac-SIG] bundle-builder suggestion
Bob Ippolito
bob at redivi.com
Fri Mar 19 12:15:56 EST 2004
On Mar 19, 2004, at 11:39 AM, Chris Barker wrote:
>
>
> Bob Ippolito wrote:
>> As long as all you depend on is
>> code, the currently-unnamed-next-generation-bundlebuilder should be
>> able to --standalone it (unless it is a /System Python, which are not
>> allowed to be --standalone'ed because it doesn't make sense).
>
> Why doesn't --standalone make sense for the System Python? As someone
> pointed out, an OS-X 10.3 user doesn't necessarily have Python
> installed, and who knows what will happen in future versions of OS-X?
> If you want to make an bundle that will run on future versions, it
> might make sense to bundle in all of Python, so that it won't depend
> on Apple delivering an old version along with a new version in future
> versions of OS-X.
They do necessarily have Python installed, they do not necessary have a
symlink to it in /usr/bin. There is a big difference between the two.
The new bootstrap (PyMacApp) works in both scenarios, because it
depends on the existence of a Python framework, not on the existence of
a Python interpreter.
It does not make sense to bloat executables because it MAY OR MAY NOT
support an operating system that will not be released for quite a few
months. --standalone leads people to believe that it's compatible with
PREVIOUS versions of OS X, and it most certainly IS NOT when used in
conjunction with a Python (and Python extensions) built on OS X 10.3
using standard means, especially the one that comes with the OS.
> I see this as analogous to dynamic vs static linking. If you
> dynamically link, you are dependent on those libraries you link to
> being present on all systems you want your app to run on. It has it's
> advantages, but statically linking is safer, particularly if the
> library in question (in this case Python) is somewhat obscure, and
> doesn't have a lot of history with the OS vendor.
Yes, exactly, and if you want it to be (roughly) equivalent to static
linking than you better use a Python that you have control over!
-bob
More information about the Pythonmac-SIG
mailing list