Numpy(およびscipyとmatplotlib)をvirturalenvにインストールしようとしています。
しかし、これらのエラーが引き続き発生します:
RuntimeError: Broken toolchain: cannot link a simple C program
----------------------------------------
Cleaning up...
Command python setup.py Egg_info failed with error code 1
Xcodeのコマンドラインツールがインストールされています
$ which gcc
/usr/bin/gcc
$ which cc
/usr/bin/cc
私はMac OSX 10.9を使用しています
編集
はい、pipでインストールしようとしています。
トレースバック全体が巨大です(> 400行)
以下にそのセクションを示します。
C compiler: cc -fno-strict-aliasing -fno-common -dynamic -Arch x86_64 -Arch i386 -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -mno-fused-madd -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -Arch x86_64 -Arch i386 -pipe
compile options: '-Inumpy/core/src/private -Inumpy/core/src -Inumpy/core -Inumpy/core/src/npymath -Inumpy/core/src/multiarray -Inumpy/core/src/umath -Inumpy/core/src/npysort -Inumpy/core/include -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c'
cc: _configtest.c
clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]
clang: note: this will be a hard error (cannot be downgraded to a warning) in the future
clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]
clang: note: this will be a hard error (cannot be downgraded to a warning) in the future
failure.
removing: _configtest.c _configtest.o
Traceback (most recent call last):
File "<string>", line 17, in <module>
File "/Users/bdhammel/Documents/research_programming/Julia_env/build/numpy/setup.py", line 192, in <module>
setup_package()
File "/Users/bdhammel/Documents/research_programming/Julia_env/build/numpy/setup.py", line 185, in setup_package
configuration=configuration )
File "/Users/bdhammel/Documents/research_programming/Julia_env/build/numpy/numpy/distutils/core.py", line 169, in setup
return old_setup(**new_attr)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup
dist.run_commands()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/Users/bdhammel/Documents/research_programming/Julia_env/build/numpy/numpy/distutils/command/Egg_info.py", line 10, in run
self.run_command("build_src")
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command
self.distribution.run_command(command)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/Users/bdhammel/Documents/research_programming/Julia_env/build/numpy/numpy/distutils/command/build_src.py", line 153, in run
self.build_sources()
File "/Users/bdhammel/Documents/research_programming/Julia_env/build/numpy/numpy/distutils/command/build_src.py", line 164, in build_sources
self.build_library_sources(*libname_info)
File "/Users/bdhammel/Documents/research_programming/Julia_env/build/numpy/numpy/distutils/command/build_src.py", line 299, in build_library_sources
sources = self.generate_sources(sources, (lib_name, build_info))
File "/Users/bdhammel/Documents/research_programming/Julia_env/build/numpy/numpy/distutils/command/build_src.py", line 386, in generate_sources
source = func(extension, build_dir)
File "numpy/core/setup.py", line 674, in get_mathlib_info
raise RuntimeError("Broken toolchain: cannot link a simple C program")
RuntimeError: Broken toolchain: cannot link a simple C program
いですが、動作するようです
Sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install --upgrade numpy
Numpy以外のパッケージ(lxmlなど)でこのエラーが発生する場合、コマンドの最後にnumpy
の代わりにそのパッケージ名を指定してください。
私は誰かがgemのインストールで持っていた同様の問題を見ました
Ruby GemのインストールJaveはMavericksおよびXcode 5.1で失敗します-不明な引数: '-multiply_definedsuppress'
これは一時的な修正であり、ある時点でコンパイラオプションを修正する必要があります。
Docker(Alpine)およびPython 3.xの場合、これでうまくいきました。
RUN apk update
RUN apk add make automake gcc g++ Subversion python3-dev
問題は、コンパイルできないことです。
まず、Xcodeの新しい利用規約に同意したことを確認してください。これを行うには、xCodeを開いて受け入れます。
次に、gccをインストールしてみてください
brew install gcc
最後に、Numpyのインストールを試みます
pip install numpy
お役に立てれば。
Sudoを使用したくない場合(したがって、venvを使用する際に権限などが保持されます)、ARCHFLAGS宣言を.bash_profileに追加して、通常どおり実行できます。これは、Mavericksとvenvを使用したXcode 5.1で機能しました。
〜/ .bash_profileで:
export ARCHFLAGS = -Wno-error = unused-command-line-argument-hard-error-in-future
次に、コマンドを実行します。
pip install --upgrade numpy
XCodeを開いて契約書に同意し、ツールをインストールするだけでした。その後、PyCharmに戻り、numpyを問題なく再インストールしました。
同様の問題を抱えているFedoraユーザーの場合、パッケージをインストールしてみてください。
(python3を使用しない場合は、pip3の代わりにpython-develとpipを使用してください)
Sudo dnf install python3-devel
Sudo dnf install make automake gcc gcc-c++ gcc-gfortran
Sudo dnf install redhat-rpm-config
Sudo dnf install Subversion
してみて
Sudo pip3 install numpy
Linuxディストリビューションを実行している場合、特にsh: gcc: command not found
のような明確なログ行が表示される場合は、Cコンパイラが必要になる場合があります。 here の指示に従うことができます。これについては以下にまとめました。
Fedora、Red Hat、CentOS、またはScientific Linux
# yum groupinstall 'Development Tools'
DebianまたはUbuntu Linux
$ Sudo apt-get update $ Sudo apt-get install build-essential manpages-dev
その後、再実行してみてください:
Sudo pip install numpy
OS XがXCodeをアップグレードした後、場合によっては、XCodeはユーザー(管理者特権)に新しいライセンスの受け入れを要求します。ライセンスが受け入れられるまで、clangおよびgccはコードをコンパイルおよびリンクしようとするとエラーを発行します。または、少なくともpythonパッケージ。
XCodeを起動してライセンスに同意すると、エラーは表示されなくなります。
少なくとも、私にはそうでした。
上記はpython3-devをインストールして初めて機能しました。
Fedora 22では、これはpip自体を更新することで解決されました:Sudo pip install --upgrade pip
これは、Cコンパイラが見つからないことを意味します。他のコンパイラのリンクに失敗した場合は、gccコンパイラをインストールしてみてください。