As of PyInstaller 2.0 and newer, both 32-bit and 64-bit Mac OS X are supported.

There are surely some bugs and missing features, but you are encouraged to try it and report your experiences on the mailing list. Also search our tickets because there might be patches floating around that can help you out with your showstoppers.

Universal binaries

PyInstaller does not support universal binaries (#384).

If you create with PyInstaller 64-bit binary, it won't work on Mac OS X 10.4 (Tiger) or 10.5 (Leopard).

  • 10.4 and 10.5 are only 32-bit OS.
  • Default Python 2.6 and 2.7 on Mac OS X 10.6+ (Snow Leopard and newer) are universal binaries and are treated as 64-bit by default.
  • PyInstaller will use 64-bit bootloader on Mac OS X 10.6+.
  • Default Python 2.5 on Mac OS X 10.6+ is still only 32-bit binary.
  • If you need 32-bit binary version of Python, run Python as 32-bit binary
    arch -i386 python

Creating bundles

PyInstaller will automatically create bundles under Mac OSX for windowed executables. When running, make sure to pass the option "--windowed".

Bundles can be done for both one-file and one-dir executables. One-dir mode is suggested since it benefits from faster startup times; moreover, since a bundle is a directory anyway, the one-file executable is not helping you anyway with distribution (you will have to make a DMG).

Last modified 2 years ago Last modified on Aug 13, 2012 9:27:48 PM