2011-12-07 1 views
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'], 
) 

答えて

0

これが機能しない場合、あなたは

'includes': 'PySide'

を追加する必要があり、時々私は、セットアップの上部に必要なモジュールをインポート見つけますスクリプトが役立ちます。

ので変更:

from setuptools import setup 
import PySide 

from setuptools import setup 

関連する問題