NumPyをpython 2.7.3のMac OS Xで正常にビルド/インストールしました。今度はscipyもビルド/インストールしたいです。gitハブからダウンロードしました。ディレクトリに行きました。 Ran python setup.py buildそしてこのエラーに出くわすまで動作しているように見えました:
customize Gnu95FCompiler
Could not locate executable gfortran
Could not locate executable f95
customize NAGFCompiler
customize AbsoftFCompiler
Could not locate executable f90
Could not locate executable f77
customize IBMFCompiler
Could not locate executable xlf90
Could not locate executable xlf
customize IntelFCompiler
Could not locate executable ifort
Could not locate executable ifc
customize GnuFCompiler
Could not locate executable g77
customize G95FCompiler
Could not locate executable g95
customize PGroupFCompiler
Could not locate executable pgfortran
don't know how to compile Fortran code on platform 'posix'
building 'dfftpack' library
error: library dfftpack has Fortran sources but no Fortran compiler found
NumPy用にFortranがインストールされていると思っていました...どうやってダウンロードしますか?
問題は、scipy
をビルドするためにFortranコンパイラをインストールする必要があることです。
また、Fortranサポートを無効にしてビルドされたnumpy
が既にある場合は、それを交換する必要があります。 AppleのプレインストールされたPythonバージョンのいくつかには、そのようなnumpy
ビルドがプレインストールされています。
Fortranを取得する最も簡単な方法は、 Homebrew を使用することです。 ドキュメント のように、最初にXcodeとそのコマンドラインツールをインストールする必要があります。 (コマンドラインツールのインストール方法は、Xcodeのほとんどのメジャーバージョンごとに異なるため、最新の説明については、リンクされたドキュメントを参照してください。)次にHomebrewをインストールします。インストールURLは数回変更されているため、Homebrewホームページまたはインストール手順を参照してください( http://brew.sh/ )が、次のようになります。
Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
次に:
brew install gcc
(注:2014年のある時点まで、gfortran
はgcc
とは別のレシピであったため、コマンドはbrew install gfortran
でした。しかし、今すぐ試してみると、「 GNU FortranはGCCの一部として提供されるようになり、brew install gcc
"でインストールできます。)
本当に pip
を使用してscipy
をインストールしたいので、もしそれがなければ、最初に入手してください。 AppleのプリインストールされたPython(少なくとも10.7および10.8)にはeasy_install
が含まれますが、pip
は含まれません。そのための最も簡単な方法は次のとおりです。
Sudo easy_install pip
ただし、グローバルインストールの代わりに virtualenv
の使用を検討することもできます(この場合、次のコマンドでSudo
も削除する必要があります)。
gfortran
とpip
が得られたので、あとはこれだけです:
Sudo pip install --upgrade numpy
Sudo pip install scipy
警告:
上記の手順は、AppleのPythonのプレインストールバージョン用です。異なるバージョンのPythonを使用している場合、実際に使用しないことを検討する必要があります。パス、インストールされたパッケージなどを同期させることは悪夢です。これの例外は、Python 3.xバージョンが必要な場合です。この場合、python.orgまたはHomebrewからインストールすることは完全に合理的です。 python
、pip2.7
などはAppleのPython用であるため、衝突は発生しません。 3.xバージョンのpython3
、pip3.3
など。
すでにpip
を持っているが、古くなっているのではないかと心配している場合は、pip install --upgrade pip
。 (セキュリティと堅牢性の利点に加えて、科学スタックやその他のモジュールのバイナリホイールとの互換性を確保することで、時間を大幅に節約できます。)
ほとんどの非Apple Pythonインストール(および10.9または10.10のAppleの場合もあります。私はチェックしていません)では、notを使用する必要がありますeasy_install
でpip
をインストールします。 pip
インストール手順 に従ってください。しかし、最初にあなたがまだ持っていないことを確認してください。
virtualenv
/venv
を使用している場合、仮想環境にはすでにpip
が含まれています。pip
bootstrap を含めることができます。 3.4+にpip
がまだない場合は、python -m ensurepip
をインストールしてください。pip
が含まれます。Python 3.3以降では、venv
の代わりに組み込みの virtualenv
を使用できます。
MacPorts、Fink、gentoo-altなどを使用している場合、パッケージマネージャーに付属のscipy
パッケージをインストールする必要があります。必要に応じてドラッグします(再構築PythonおよびGCC)。
EnthoughtやActiveStateなどのサードパーティのバイナリインストールには、scipy
および必要な他のすべてが既に含まれている場合があります。そうでない場合、手順は基本的に上記と同じですが、Sudo
などにスキップするか従うステップを推測する必要があります。
Apple以外のビルドのPython 2.7を使用していて、PATHの問題を回避するには、次の2つのことを行う必要があります。
まず、スクリプトまたはバイナリ(pip
自体を含む)を含むPythonパッケージを複数のPythonにインストールしないでください。たとえば、Apple 2.7とHomebrew 2.7の両方にipython
をインストールすると、両方とも/usr/local/bin/ipython
と/usr/local/bin/ipython-2.7
という名前のスクリプトを作成しようとします。運がよければ、1つのインストールが失敗します。そうしないと、両方とも成功し、一方が他方を上書きし、上書きされたバージョンを実行する方法がなくなります。
第二に、代替PythonのスクリプトとバイナリへのパスがAppleのPATHの前に来るようにしてください。どの代替Pythonをインストールしたか、どの指示に従ったかに応じて、これは次のようになります。
/usr/local/bin
/Library/Frameworks/Python.framework/Versions/2.7/bin
/usr/local/share/python2.7/bin
/usr/local/Cellar/python/2.7.3/bin
パスが何であれ、PATH変数を編集する必要があります。
GUIアプリ(およびLaunchAgentsなど)に影響を与えたい場合、これを行うためのサポートされている方法はもはやありませんが、非推奨の QA1067 はまだLionで機能しているようです。 Homebrew [〜#〜] faq [〜#〜] および Python FAQ が示唆するものでもあります。
コマンドラインセッション(Terminal.appとリモートsshの両方)だけに関心がある場合は、代わりに、適切なプロファイルファイルを編集する標準的なUnixの操作を行うことができます。どのプロファイルファイルが適切かは、何に影響を与えたいかによって異なります。 (すべてのユーザーですか、それとも1人のユーザーですか?bashですか、それともシェルですか?など)。どちらが必要かわからない場合は、調査を行う必要があります。わざわざ学習したくない場合は、~/.profile
を実行し、それが意図したものではなかったとしても文句を言わないでください。
いずれにしても、適切なパスがPATHの/usr/bin
の前に来るようにする必要があります。したがって、たとえば、次を~/.profile
に追加できます。
PATH=/usr/local/bin:$PATH
export PATH
(もちろん、新しいターミナルシェルを作成するか、スクリプトを有効にしてからスクリプトを入手する必要があります。)
homebrew
を使用している場合は、brew doctor
で正しいかどうかがわかります。
実際の問題は、Sourceforgeからの断続的なダウンロードの失敗にすぎないようです。
curl: (33) HTTP server doesn't seem to support byte ranges. Cannot resume. Error: Download failed: downloads.sf.net/project/machomebrew/Bottles/…
brew install gfortran
を再試行すると、Homebrewはこのエラーから自動的に回復するはずです。だから、それが最初に試すことです。
それでもうまくいかない場合は、brew doctor
で問題が見つかったかどうかを確認し、次にbrew install -d gfortran
で部分的にダウンロードしたファイルの保存場所を確認して、手動で削除して再試行してください。
他のすべてが失敗した場合、--build-from-source
を使用して、ボトルを使用しないように強制できます。もちろん、ソースからのビルドにはバイナリボトルのインストールよりもかなり時間がかかりますが、同じ結果が得られるはずです。
2014年5月20日の時点で、brewを使用している場合、Fortranはgccの一部としてインストールされます。別個のFortranパッケージは必要ありません。 numpyをインストールするのに私が働いたのは次のとおりです:
brew install gcc
)which gcc
は/ usr/local/bin/gccを指す必要があります)export ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future
( pip install numpyの問題-RuntimeError:Broken toolchain:単純なCプログラムをリンクできない)を参照してください )pip install numpy
この問題はあまり複雑ではないと思います。
1)pipをインストールする
cd /Library/Frameworks/Python.framework/Versions/ ln -s 2.7現在
cd/usr/bin rm -f python ln -s /Library/Frameworks/Python.framework/Versions/Current/bin/python python
2) https://pypi.python.org/pypi/setuptools#files Sudo sh setuptools-0.6c11-py2.7.EggからEggをダウンロードします
3)次のリンクからgfotranをダウンロードしてインストールします。 http://r.research.att.com/tools/
4)その後、次のように入力する必要があります:Sudo pip install -U scipy Sudo pip install -U numpy Sudo pip install -U matplotlib
うまくいけば、あなたが持ちたいものはすべて揃っているはずです。
次の手順を使用して、同じ問題に遭遇しました。
1。 gfortranをインストールする
2。 pip install scipy
それは大丈夫です。
gfortranがインストールされていて、バイナリはgfortran-4.2でした。そのため、SciPyをインストールしようとするたびにgfortranを使用しようとしていたため、コンパイラが見つかりませんでした。
gfortran-4.2からへのシンボリックリンクを作成しましたgfortran.
シンボリックリンクを作成する場所を見つけるには、次を実行します。
$ which gfortran-4.2
/usr/local/bin/gfortran-4.2
それからシンボリックリンク:
ln -s /usr/local/bin/gfortran-4.2 /usr/local/bin/gfortran
XcodeとOSXのバージョンの問題と思います。 Xcode:6.4およびOs X 10.11.1があり、同じエラーメッセージが引き続き表示されていました(gfortranなどが見つかりませんでした)。 @abarnertによる徹底的な回答を含め、多くのことを試しましたが、解決策はXcodeを(7.1.1に)アップグレードしました。
OSXヨセミテおよびおそらく古いosxリリースでも、pip install scipy
を実行する前にfortranコンパイラをダウンロードしてインストールすることをお勧めします。最新のFortranコンパイラをダウンロードするには、次のリンクにアクセスしてください。