2017-01-31 9 views
0

私は、次のコードにpy2appを使用しようとしています:エイリアスモードとpy2appマッハ-Oヘッダエラー

py2applet --make-setup test.py 

開発正常に動作します:

print(1+1) 

私はと私のセットアップを作成します

python3 setup.py py2app -A 

スタンドアロンモードを試してみると:

python3 setup.py py2app 

私はラインの多くの後に取得:

WARNING: Mach-O header in '/Users/quentinpeter/Documents/PHD/Python/People project/Michele_worms/dist/test.app/Contents/Resources/lib/python3.6/scipy/linalg/_interpolative.cpython-36m-darwin.so' may be too large to relocate 
WARNING: Mach-O header in '/Users/quentinpeter/Documents/PHD/Python/People project/Michele_worms/dist/test.app/Contents/Resources/lib/python3.6/scipy/linalg/_interpolative.cpython-36m-darwin.so' may be too large to relocate 
Traceback (most recent call last): 
    File "setup.py", line 18, in <module> 
    setup_requires=['py2app'], 
    File "/usr/local/Cellar/python3/3.6.0/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/core.py", line 148, in setup 
    dist.run_commands() 
    File "/usr/local/Cellar/python3/3.6.0/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py", line 955, in run_commands 
    self.run_command(cmd) 
    File "/usr/local/Cellar/python3/3.6.0/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py", line 974, in run_command 
    cmd_obj.run() 
    File "/usr/local/lib/python3.6/site-packages/py2app/build_app.py", line 764, in run 
    self._run() 
    File "/usr/local/lib/python3.6/site-packages/py2app/build_app.py", line 974, in _run 
    self.run_normal() 
    File "/usr/local/lib/python3.6/site-packages/py2app/build_app.py", line 1082, in run_normal 
    self.create_binaries(py_files, pkgdirs, extensions, loader_files) 
    File "/usr/local/lib/python3.6/site-packages/py2app/build_app.py", line 1385, in create_binaries 
    platfiles = mm.run() 
    File "/usr/local/lib/python3.6/site-packages/macholib/MachOStandalone.py", line 146, in run 
    node.write(f) 
    File "/usr/local/lib/python3.6/site-packages/macholib/MachO.py", line 133, in write 
    header.write(f) 
    File "/usr/local/lib/python3.6/site-packages/macholib/MachO.py", line 343, in write 
    self.synchronize_size() 
    File "/usr/local/lib/python3.6/site-packages/macholib/MachO.py", line 333, in synchronize_size 
    self.parent.filename, self.total_size + self.sizediff, self.low_offset, self.sizediff)) 
ValueError: New Mach-O header is too large to relocate in '/Users/quentinpeter/Documents/PHD/Python/People project/Michele_worms/dist/test.app/Contents/Resources/lib/python3.6/scipy/linalg/_interpolative.cpython-36m-darwin.so' (new size=1764, max size=1712, delta=108) 

あなたは何が起こるか任意のアイデアを持っていますか?私がオンラインで見つけたもののほとんどはMacPortsを指していますが、私は自家製です。私のpythonの

情報:

Python 3.6.0 (default, Dec 24 2016, 08:01:42) 
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)] on darwin 

答えて

1

私は同じ問題を抱えていたと私は私が持っていたmacholibのバージョン(1.8)をアンインストールし、ピップと1.7をインストールすることで、それを修正しました。 Python 2.7を使用している場合、scipyバージョン0.14.0に戻すと同様に修正されます。