私は現在pycryptoをインストールしようとしています。python setup.py buildを実行すると、次のエラーが表示されます:
cc -bundle -undefined dynamic_lookup -Arch x86_64 -Arch i386 -Wl,-F. build/temp.macosx-10.9-intel-2.7/src/_fastmath.o -lgmp -o build/lib.macosx-10.9-intel-2.7/Crypto/PublicKey/_fastmath.so
ld: illegal text-relocation to '___gmp_binvert_limb_table' in /usr/local/lib/libgmp.a(mp_minv_tab.o) from '___gmpn_divexact_1' in /usr/local/lib/libgmp.a(dive_1.o) for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: command 'cc' failed with exit status 1
コマンドラインツールを再インストールして、Xcodeの古いインスタンスを削除しようとしました。
どんな助けでも大いに感謝します
これでうまくいきました。 (Xcode 5.1を使用している場合は動作します)
ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install pycrypto
これは私のためにそれをしました:
Sudo port install gmp
Sudo ln -s /opt/local/lib/libgmp.dylib /usr/lib/libgmp.dylib
ARCHFLAGS=-Wno-error CFLAGS=-I/opt/local/include Sudo -E pip install pycrypto
ヨセミテで:
CC=clang Sudo -E pip install pycrypto
私は同じ問題に遭遇し、gmpをインストールすることでそれを修正することができました:
brew install gmp
それから私は自分のビルドディレクトリを核にし、pycryptoインストールからやり直しました、そしてそれは成功しました。
これにより、pycryptoの構成スクリプト中の警告メッセージも修正されます。
warning: GMP or MPIR library not found; Not building Crypto.PublickKey._fastmath
関連する質問 を参照してください。
これはMojaveで動作し、他の提示されたオプションよりも優れたIMOです:brew install gmp CFLAGS=-I/usr/local/include \ LDFLAGS=-L/usr/local/Cellar/gmp/6.1.2_2/lib \ pip install pycrypto
OSX 10.9とXcode 5をアップグレードした後、pip install pycryptoを再び動作させるためにgmpをインストールするためにbrewが必要であることに最近気付きましたが、gmpビルドが失敗し始めました違法なテキストの再配置。 既知の問題12946 は、コンパイラが位置に依存しないコードのコンパイルに失敗するように見えます:
cc -bundle -undefined dynamic_lookup -Wl、-F。 -Wno-error = unused-command-line-argument-hard-error-in-future -Wno-error = unused-command-line-argument-hard-error-in-future build/temp.macosx-10.9-intel- 2.7/src/_fastmath.o -lgmp -o build/lib.macosx-10.9-intel-2.7/Crypto/PublicKey/_fastmath.so
ld:/usr/local/lib/libgmp.a(mp_minv_tab.o)の「___gmp_binvert_limb_table」へのテキストの再配置は、アーキテクチャx86_64の/usr/local/lib/libgmp.a(dive_1.o)の「___gmpn_divexact_1」から不正です
clang:エラー:リンカーコマンドが終了コード1で失敗しました(-vを使用して呼び出しを確認してください)
エラー:コマンド 'cc'が終了ステータス1で失敗しました
radiofrequency によって提供される答えと同様に、回避策として、gmpの共有ライブラリをシステムの/ usr/libディレクトリにシンボリックリンクしました。
Sudo ln -s /usr/local/Cellar/gmp/5.1.3/lib/libgmp.dylib /usr/lib/libgmp.dylib
Gmp開発者は--with-picを追加する必要があります。
補足:pycryptoを構築する警告の数は快適ではありません。
エルキャピタンで私はこれをやった...
Sudo easy_install livestreamer
Sudo easy_install PyCrypto
et voila ...ストリームをHDDに保存できるようになりました。
Homebrewのインストール (ページ下部にインストール用の単一行)、次に試してください:
$ Sudo pip install pycrypto
PyCryptoをインストールするには、MacPortsと次のコマンドを使用します。 Mac OS Xの最新バージョン-Yosemiteでテストしました:
Pythonバージョン2.7:
Sudo port install py27-crypto
Pythonバージョン3.4:
Sudo port install py34-crypto
Pycryptoと暗号化パッケージをインストールしようとしている人のために、これは私のために機能するようになったコマンドです:
env ARCHFLAGS="-Arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography
私はPythonの新人です。私もこの問題を経験しました。そしてそれは私を苛立たせました。投稿された解決策はどれもうまくいかなかったので、libgmp.a
およびlibgmp.la
一時的に、そしてpip
はエラーなしでCrypto
をインストールしました。これは許容できるアプローチですか?私はnoなぜこれが機能したのかについて理解しています...
これがMac/El Capitanで私のために働いた唯一のものです:
Sudo easy_install -U livestreamer
私が間違っていなければ、pipとhomebrewはどちらもパッケージマネージャーですが、homebrewはRubyに基づいて構築されており、pipはpythonに基づいて構築されています。
$ Sudo pip install pycrypto
参照したこのコマンドには、自作ではなく、pipがインストールされている必要があります。