なぜこのPythonパッケージは存在しないgccを使用しようとしているのですか?


8

SolarisにPython 3用のPyCryptoをインストールしようとしています。" python3 setup.py install"でも " pip3 install pycrypto"でも、同じ問題が発生します。存在しないgccが呼び出されます。

python3 setup.py install
[...]
/opt/csw/bin/gcc-4.8 -pipe -m32 -march=pentiumpro -Wno-unused-result -fwrapv -Wall -Wstrict-prototypes -pipe -m32 -march=pentiumpro -I/usr/include/gmp -fPIC -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/usr/include/ -I/opt/csw/include/python3.3m -c src/_fastmath.c -o build/temp.solaris-2.11-i86pc.32bit-3.3/src/_fastmath.o
unable to execute /opt/csw/bin/gcc-4.8: No such file or directory

今、私は自分が乗っているマシンの歴史について何も知りません。/opt/csw/bin/gcc-4.8が過去のある時点で存在した可能性があります。しかし、それはもうありません。 export CC=/usr/bin/gcc (または他のgcc)は問題を修正しません ---必ず/opt/csw/bin/gcc-4.8が呼び出されます。

私はPyCryptoのインストールにはあま​​り興味がなく、なぜこの偽の呼び出しが最初に行われるのかを理解することにもっと興味があります。「/opt/csw/bin/gcc-4.8」という値はどこに保存されますか?システムはどのように/どこで、そのコンパイラーを呼び出す必要があると考えるための情報を得ますか?

私が考えることができる唯一のことは、Python3は元々/opt/csw/bin/gcc-4.8でコンパイルされていて、Python3は/opt/csw/bin/gcc-4.8が使用するコンパイラである場所で永久に焼き付けていることですものをコンパイルします。これが事実である場合、この誤った依存関係を取り除くために、Python3を削除して再インストールするのが最善でしょうか?


何か関係があるのではないでしょうかdistutils?また、stackoverflow.com
questions / 5967065 /…

1
ソースへのポインタをお勧めしますか?または、setup.py最初に見てまたは貼り付けます。
Faheem Mitha 2014年

ここにsetup.pyの内容:github.com/dlitz/pycrypto/blob/master/setup.py gccへの直接参照はありません。しかし、「ビルド」は「distutils」の一部なので、@ jmunschは正しい方向にあるかもしれません。
CptSupermrkt 2014年

distutils.sysconfigは、CC環境変数を尊重する必要があることを示しているようです:/
CptSupermrkt 14年

あなたがを使用しないことを確認するためだけにsudo、あなたは?
Piotr Dobrogost 2014年

回答:


1

/opt/csw/bin/gcc-4.8 pathは、OracleディストリビューションにプリインストールされているOpenCSWを示します(4.8が削除されたか、別のバージョンが存在します)。

設定してみてくださいCCCXX内部からの環境変数をsetup.pyos.environ

os.environ["CC"] = "g++-4.7" os.environ["CXX"] = "g++-4.7"

(4.7はの私のバージョンです。g++にあるものに設定してください/bin)。


0

/opt/csw/bin/gcc-4.8そのポイントであなたのccまたはgccコンパイラへのソフトリンクを作成しますか?


これは答えというよりも質問です。確認してください:良い答えを書くにはどうすればよいですか。そして、おそらくいくつかの例と説明の詳細で回答を更新してください。ありがとう。
devnull 2015

gccコマンドラインオプションが異なるため、これは機能しそうにありません。ただし、gcc固有のオプションを破棄し、使用可能なコンパイラーを呼び出すスクリプトは機能する可能性があります。
Anthon、2015

@DevNullこれはどうですか?少し
Michael Mrozek

@MichaelMrozek、そうかもしれない。しかし、WayneBがOPにソフトリンクを作成するmaybe?ように依頼しているようであり、そのようなリンクを作成する方法とそれがどのように役立つかを示すよりもそうです。私がそのように感じる唯一の人なら、コメントを撤回します。
devnull 2015
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.