似たような問題を抱えている方もいらっしゃるようですが、よく調べてみたところ、特定のアーキテクチャで動作するソリューションを見つけることができませんでした。 Pycrypto(Fabricの子会社として)をインストールしようとしていますが、役に立ちません。
私はMac 10.8.2を実行しています、python 2.7.3、およびXCode 4.6-pipまたはeasy_installを使用してインストールします(私は両方を試しました)。 XCodeのバージョンに関する問題か、ライブラリが原因である可能性があります。XCodeのコマンドラインツールがインストールされており、.cshrcファイルにsetenv ARCHFLAGS "-Arch i386 -Arch x86_64"
を配置しようとしました。また、ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer /Developer
も試しました。ライブラリについては、 「ln -s /usr/local/lib/libgmp.dylib /usr/lib/libgmp.dylib
」を介してそれらをリンクしようとしました-しかし、それも機能しませんでした。
エラーは、どの角度を試みても常に同じです(以下を参照)。どんな助けもいただければ幸いです。
/usr/local/share/python% pip install pycrypto
Downloading/unpacking pycrypto
Running setup.py Egg_info for package pycrypto
Installing collected packages: pycrypto
Running setup.py install for pycrypto
building 'Crypto.PublicKey._fastmath' extension
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -fno-strict-aliasing -fno-common -dynamic -Arch i386 -Arch x86_64 -pipe -mmacosx-version-min=10.8 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk -Wno-unused-value -Wno-empty-body -Qunused-arguments -fwrapv -Wall -Wstrict-prototypes -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/usr/include/ -I/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c src/_fastmath.c -o build/temp.macosx-10.8-intel-2.7/src/_fastmath.o
src/_fastmath.c:36:11: fatal error: 'gmp.h' file not found
# include <gmp.h>
^
1 error generated.
error: command '/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang' failed with exit status 1
Complete output from command /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python -c "import setuptools;__file__='/var/folders/ym/v8l23q_x2xz_qhx3m84n6ym00005fr/T/pip-build/pycrypto/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/ym/v8l23q_x2xz_qhx3m84n6ym00005fr/T/pip-Xb7nGV-record/install-record.txt --single-version-externally-managed:
running install
running build
running build_py
running build_ext
running build_configure
building 'Crypto.PublicKey._fastmath' extension
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -fno-strict-aliasing -fno-common -dynamic -Arch i386 -Arch x86_64 -pipe -mmacosx-version-min=10.8 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk -Wno-unused-value -Wno-empty-body -Qunused-arguments -fwrapv -Wall -Wstrict-prototypes -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/usr/include/ -I/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c src/_fastmath.c -o build/temp.macosx-10.8-intel-2.7/src/_fastmath.o
src/_fastmath.c:36:11: fatal error: 'gmp.h' file not found
# include <gmp.h>
^
1 error generated.
error: command '/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain /usr/bin/clang' failed with exit status 1
----------------------------------------
Command /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python -c "import setuptools;__file__='/var/folders/ym/v8l23q_x2xz_qhx3m84n6ym00005fr/T/pip-build/pycrypto/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/ym/v8l23q_x2xz_qhx3m84n6ym00005fr/T/pip-Xb7nGV-record/install-record.txt --single-version-externally-managed failed with error code 1 in /var/folders/ym/v8l23q_x2xz_qhx3m84n6ym00005fr/T/pip-build/pycrypto
Storing complete log in /Users/me/.pip/pip.log
ファブリックを呼び出そうとしたときのエラー:
Traceback (most recent call last):
File "/usr/local/share/python/fab", line 5, in <module>
from pkg_resources import load_entry_point
File "/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/distribute-0.6.28-py2.7.Egg/pkg_resources.py", line 2815, in <module>
working_set.require(__requires__)
File "/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/distribute-0.6.28-py2.7.Egg/pkg_resources.py", line 690, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/distribute-0.6.28-py2.7.Egg/pkg_resources.py", line 588, in resolve
raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: pycrypto>=2.1,!=2.4
最終的に、私の問題の根本は、FabricとPycryptoのバージョン間の非互換性にあることに気付きました。 Fabricのバージョンを1.2.6にダウングレードすると、上記のエラーは発生しなくなりました。次に、 tutorial をジャンプポイントとして使用しました。しかし、チュートリアルと以前のバージョンのファブリックにもかかわらず、PyCrypto >= 2.1, !=2.4
エラーが発生しました。私は最終的にPycrypto 2.2をソースからインストールしました(pip -Iv install pycrypto==2.2
per this を指定した場合でもpip
はv。2.0.1のみをインストールするため、v。2.6はgmp.h
エラー)。最後に、すべてが機能しました。
Homebrewを使用する場合、これでうまくいくはずです。
brew install gmp
env "CFLAGS=-I/usr/local/include -L/usr/local/lib" pip install pycrypto
Envを使用すると、その呼び出しに対してのみ機能します。このセッションで後でpycryptoをインストールする必要がある場合は、代わりに変数をエクスポートします。
export "CFLAGS=-I/usr/local/include -L/usr/local/lib"
pip install pycrypto
次のコマンドを使用して、PyCryptoをインストールすることができました。
CFLAGS=-I/opt/local/include pip install pycrypto
MacPortsを介してGMPをインストールし、OSX 10.8.3上でPython 2.7.2 python.orgから)を実行しています。この場合、virtualenvにインストールしています。
PyCryptoを使用すると次の警告が表示されますが、それでも機能します。
/Users/me/.virtualenvs/blah/lib/python2.7/site-packages/Crypto/Util/number.py:57: PowmInsecureWarning: Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attack vulnerability.
_warn("Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attack vulnerability.", PowmInsecureWarning)
Pycrptoがgmp.hを含むCファイルをコンパイルする必要があるため、gmppylibをリンクするだけでは役に立ちません。 gmp.hを含むGMPライブラリがインストールされている必要があります。 Mac OSにGMPをインストールする必要があるようです。次の2つのリンクが参考になります。
これは私のために働いた修正です:
https://medium.com/software-bugs/84afab886a1e
インストールヘッダーインクルードパス(-I)に基づいてシンボリックリンクを作成する必要がありますが、クラッシュします。例:
'Crypto.PublicKey._fastmath'拡張機能の構築
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -fno-strict-aliasing -fno-common -dynamic -pipe -march = native -mmacosx-version-min = 10.7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk -isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10 .7.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/usr/include -I/Applications/Xcode.app/Contents /Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/usr/X11/include -Wno-unused-value -Wno-empty-body -Qunused-arguments -fwrapv -Wall -Wstrict-prototypes -std = c99 -O3 -fomit-frame-pointer -Isrc/*-I/usr/include /-* I/usr/local/Cellar/python /2.7.3/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c src/_fastmath.c -o build/temp.macosx-10.7-x86_64-2.7/src/_fastmath.o
src/_fastmath.c:36:11:致命的なエラー: 'gmp.h'ファイルが見つかりません