Differences between revisions 18 and 19
Revision 18 as of 2010-07-30 06:52:40
Size: 2763
Editor: chello212186002156
Comment:
Revision 19 as of 2010-08-02 09:15:57
Size: 3347
Editor: chello212186002156
Comment:
Deletions are marked like this. Additions are marked like this.
Line 65: Line 65:
linking main-fat3 to main-i386 makes the build succeed, but the app crashes linking main-fat3 to main-i386 ::
Line 67: Line 67:
I did not try main-intel or universal yet.   cd /Library/Python/2.6/site-packages/py2app-0.5-py2.6.egg/py2app/apptemplate/prebuilt
  ln -s main-fat3 main-i386

makes the build succeed, when using sudo ::

  sudo python setup-mac.py py2app

but the app crashes ::

  mine.app/Contents/MacOS/mine

  Traceback (most recent call last):
  File "MySQLdb/__init__.pyc", line 19, in <module>
  File "_mysql.pyc", line 18, in <module>
  File "_mysql.pyc", line 15, in __load
  ImportError: '/usr/lib/python2.6/lib-dynload/_mysql.so' not found

_so is in the app, but not in the system (i like to keep things local)

copying _mysql.so into /usr/lib/python2.6/lib-dynload, cured this.

Then it works.

py2app is a Python setuptools command which will allow you to make standalone application bundles and plugins from Python scripts. py2app is similar in purpose and design to py2exe for Windows.

Latest Version 0.5.2

Installation

(py2app version 0.5 2010-07-28 Ronald Oussuroren)

"easy_install-X.Y -U py2app" should install the software, where X.Y is your favorite version of Python.

There is one new feature in this release: experimental support for python 3. This basicly means that I managed to build a single application as a standalone application bundle, without much testing. Alias builds and plugin bundles almost certainly don't work (the first because alias builds use the Carbon module which isn't available in python 3, the latter because I had to rewrite the C code in the application bundles and probably have to do the same for plugin bundles).

Notes

Execute a bundled app from the commandline to see error messages:

  • myapp.app/Contents/MacOS/myapp

Current repository:

Original version:

Problems before 0.5

  • for 64-bit systems, the pypi package (0.4.2) failed.
    • even with macholib, altgraph and modulegraph gathered from all around.
  • here

    is some workaround http://hg.hardcoded.net/py2app,

    • that i have not tested, as macholib is missing

current state

checkout and install. install with "python setup.py install"

ATTENTION some things are in /Library/Python and some things in /Library/Frameworks/Python.framework/.

questions

is it really necessary to run 'python setup.py py2app' with sudo ?

it writes into /Library ?

and there still is an error that ::

  • '/Library/Python/2.6/site-packages/py2app-0.5-py2.6.egg/py2app/apptemplate/prebuilt/main-i386'

is missing. There is only ::

  • main-fat3 main-intel main-universal

linking main-fat3 to main-i386 ::

  • cd /Library/Python/2.6/site-packages/py2app-0.5-py2.6.egg/py2app/apptemplate/prebuilt ln -s main-fat3 main-i386

makes the build succeed, when using sudo ::

  • sudo python setup-mac.py py2app

but the app crashes ::

  • mine.app/Contents/MacOS/mine Traceback (most recent call last):

    File "MySQLdb/init.pyc", line 19, in <module> File "_mysql.pyc", line 18, in <module> File "_mysql.pyc", line 15, in load ImportError: '/usr/lib/python2.6/lib-dynload/_mysql.so' not found

_so is in the app, but not in the system (i like to keep things local)

copying _mysql.so into /usr/lib/python2.6/lib-dynload, cured this.

Then it works.

Development

Python Versions

modulegraph/util.py requires python>=2.6 for immutable bytes by 'b"something"'.

Testing

py.test is used for testing. modulegraph/util.py contains tests in util.py. maybe revert to unittest.

MacPython/py2app (last edited 2010-08-29 12:25:55 by chello212186002156)

Unable to edit the page? See the FrontPage for instructions.