0
私はpy2appにバンドルしようとしている小さなアプリケーションがあります。最初は、PySideが一度バンドルされたときに正しくリンクされないという問題に遭遇しましたが、最終ビルドのコンテナにsys.path.insert(0, os.path.join(os.getcwd(), 'lib', 'python2.6','lib-dynload'))
を__boot__.py
に追加することで(少なくともローカルで)修正しました。py2appにバンドルされているとPySideアプリケーションが他のコンピュータで動作しない
作成されると、コンピュータで正常に動作します。残念ながら、この内の別のコンピュータ結果にそれを実行しようとしている:
Traceback (most recent call last):
File "/Volumes/code/dailies/dist/Sequence Dailies.app/Contents/Resources/__boot__.py", line 32, in <module>
_run('dailies_v04.py')
File "/Volumes/code/dailies/dist/Sequence Dailies.app/Contents/Resources/__boot__.py", line 29, in _run
execfile(path, globals(), globals())
File "/Volumes/code/dailies/dist/Sequence Dailies.app/Contents/Resources/dailies_v04.py", line 9, in <module>
from PySide.QtCore import *
File "PySide/__init__.pyc", line 2, in <module>
File "PySide/private.pyc", line 2, in <module>
File "PySide/QtCore.pyc", line 18, in <module>
File "PySide/QtCore.pyc", line 11, in __load
ImportError: dlopen(/Volumes/code/dailies/dist/Sequence Dailies.app/Contents/Resources/lib/python2.6/lib-dynload/PySide/QtCore.so, 2): Library not loaded: libpyside-python2.6.1.0.dylib
Referenced from: /Volumes/code/dailies/dist/Sequence Dailies.app/Contents/Resources/lib/python2.6/lib-dynload/PySide/QtCore.so
Reason: image not found
私はきちんとPySideをリンクするためにどこか逃した余分なステップがありますか?これは私の(つまらない)setup.py
です:options
で
from setuptools import setup
APP = ['dailies_v04.py']
DATA_FILES = []
OPTIONS = {'argv_emulation': False}
setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)