Hatena::ブログ(Diary)

PASL RSSフィード

2013-11-10

エラーを出さずにScipyをインストールする

| 13:13 | エラーを出さずにScipyをインストールするを含むブックマーク エラーを出さずにScipyをインストールするのブックマークコメント

以前にScipyインストール方法のエントリーを書きましたが、以前の方法ではエラーが出てしまっているので、ちゃんとテストにパスするScipyのインストール方法を調べました。

インストールしたのは Mountain Lion (10.8.5) で、Xcode (5.0.1)、Python (2.7.5) は Homebrew で入れました。コンパイルに使ってるGCCおよびGFortranは4.7で、これもHomebrewから入れました。ATLAS 3.10はGCC 4.7に最適化されているようなので、最新安定版4.8ではなく4.7を使うことにします。

基本的にはErrors in tests of Scipy ? Issue #12 ? Homebrew/homebrew-python ? GitHubにあるとおりなのですが、若干修正が必要です。

ATLASとLAPACKのダウンロード

ATLASLAPACKをそれぞれダウンロードします。現時点の最新安定版はATLASが3.10.1、LAPACKは3.4.2です。ATLASの最新安定版3.10.1はなぜかtarの展開に失敗するので、GNU tarを使います。GNU tarはHomebrewからgnu-tarの名前で取得できます。ここでは/tmpにダウンロードしたので移動します。

% cd /tmp
% bunzip2 atlas3.10.1.tar.bz2
% gtar --no-same-owner -xf atlas3.10.1.tar

ATLASのインストール

ダウンロードしたATLASとLAPACKのあるディレクトリ(ここでは/tmp)に移動し、以下のとおりにインストールします。configureの際にgccとgfortranのパスを指定する必要があります。

% cd /tmp/ATLAS
% mkdir _mac_build
% cd _mac_build
% ../configure -b 64 --prefix=/usr/local/atlas --shared --with-netlib-lapack-tarfile=/tmp/lapack-3.4.2.tgz --cc=/usr/local/bin/gcc-4.7
% make build
% make check
% make ptcheck
% make time
% make install

NumpyとScipyのインストール

現時点でScipyの最新版は0.13.0ですが、0.12.1を用います。PIPでインストールするときにインストールオプションを指定しましょう。

% export ATLAS=/usr/local/atlas
% mkdir numpy
% pip install --download numpy numpy
% cd numpy
% tar zxf numpy-1.8.0.tar.gz
% cd numpy-1.8.0
% CC=gcc-4.7 CXX=g++-4.7 python setup.py build --fcompiler=gnu95 install
% cd ../../
% mkdir scipy
% cd scipy
% wget https://pypi.python.org/packages/source/s/scipy/scipy-0.12.0.tar.gz
% tar zxf scipy-0.12.1.tar.gz
% cd scipy-0.12.1
% CC=gcc-4.7 CXX=g++-4.7 python setup.py build --fcompiler=gnu95 install

さっそくテスト

テストをしてみます。

% python -c "import numpy; numpy.test('full')"
... (途中省略) ...
OK (KNOWNFAIL=5, SKIP=6)
% python -c "import scipy; scipy.test()"
... (途中省略) ...

トラックバック - http://d.hatena.ne.jp/kiwamu_i/20131110/1383970405