web-dev-qa-db-ja.com

Mac OSXマーベリックスにpycryptoをインストールしようとしています

私は現在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の古いインスタンスを削除しようとしました。

どんな助けでも大いに感謝します

18
user1798733

これでうまくいきました。 (Xcode 5.1を使用している場合は動作します)

ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install pycrypto
34
domino

これは私のためにそれをしました:

  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
11
radiofrequency

ヨセミテで:

CC=clang Sudo -E pip install pycrypto
7

私は同じ問題に遭遇し、gmpをインストールすることでそれを修正することができました:

brew install gmp

それから私は自分のビルドディレクトリを核にし、pycryptoインストールからやり直しました、そしてそれは成功しました。

これにより、pycryptoの構成スクリプト中の警告メッセージも修正されます。

warning: GMP or MPIR library not found; Not building Crypto.PublickKey._fastmath

関連する質問 を参照してください。

6
Chris Eldredge

これはMojaveで動作し、他の提示されたオプションよりも優れたIMOです:brew install gmp CFLAGS=-I/usr/local/include \ LDFLAGS=-L/usr/local/Cellar/gmp/6.1.2_2/lib \ pip install pycrypto

3
manimaul

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を構築する警告の数は快適ではありません。

2
bbaassssiiee

エルキャピタンで私はこれをやった...

Sudo easy_install livestreamer
Sudo easy_install PyCrypto

et voila ...ストリームをHDDに保存できるようになりました。

1
GCU

Homebrewのインストール (ページ下部にインストール用の単一行)、次に試してください:

$ Sudo pip install pycrypto
0
einnocent

PyCryptoをインストールするには、MacPortsと次のコマンドを使用します。 Mac OS Xの最新バージョン-Yosemiteでテストしました:

Pythonバージョン2.7:

Sudo port install py27-crypto

Pythonバージョン3.4:

Sudo port install py34-crypto
0
Safronus

Pycryptoと暗号化パッケージをインストールしようとしている人のために、これは私のために機能するようになったコマンドです:

env ARCHFLAGS="-Arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography

0
Nick Woodhams

私はPythonの新人です。私もこの問題を経験しました。そしてそれは私を苛立たせました。投稿された解決策はどれもうまくいかなかったので、libgmp.aおよびlibgmp.la一時的に、そしてpipはエラーなしでCryptoをインストールしました。これは許容できるアプローチですか?私はnoなぜこれが機能したのかについて理解しています...

0
Mullefa

これがMac/El Capitanで私のために働いた唯一のものです:

Sudo easy_install -U livestreamer

0
chovy

私が間違っていなければ、pipとhomebrewはどちらもパッケージマネージャーですが、homebrewはRubyに基づいて構築されており、pipはpythonに基づいて構築されています。

$ Sudo pip install pycrypto

参照したこのコマンドには、自作ではなく、pipがインストールされている必要があります。

pipを取得するためのこの方法

0
Guto Hernandes