yumを使わずにCentOS5.5にnumpyとscipyをインストールする
yum使うとバージョンが古いです。
yumで入るバージョン | 最新バージョン(11/03/24時点) | |
---|---|---|
numpy | 1.2.0 | 1.5.1 |
scipy | 0.6.0 | 0.9.0 |
僕が入れたのは研究室のCentOS5.5(64bit)です。また、
Ubuntu の apt-get でインストールされるバージョンは blas/atlas/lapack を使ってくれないようで、速くしたいのであればいずれにせよ自分でビルドしたほうがいい。
Python でグラフ・(疎)行列計算するためのライブラリを紹介するよ - 観月橋日記 (続生駒日記)
そうなので、そういった方も対象ですが、全く同じでいけるかは分かりません。
(任意)Python2.6を入れる
参考:CentOS 5.5 に Python 2.6.6 をインストール - Debian GNU/Linux 3.1 on PowerMac G4
CentOS5.5に初期インストールされているのが2.4なので2.6に上げました。
BLAS, LAPACKのインストール
参考:Installing SciPy/BuildingGeneral -
64bitの場合だけを抜粋する
BLAS
$ mkdir -p ~/src/ $ cd ~/src/ $ wget http://www.netlib.org/blas/blas.tgz $ tar xzf blas.tgz $ cd BLAS $ gfortran -O3 -std=legacy -m64 -fno-second-underscore -fPIC -c *.f # with gfortran $ ar r libfblas.a *.o $ ranlib libfblas.a $ rm -rf *.o $ export BLAS=~/src/BLAS/libfblas.a
LAPACK
$ mkdir -p ~/src $ wget http://www.netlib.org/lapack/lapack.tgz $ tar xzf lapack.tgz $ # 解凍されたディレクトリを LAPACK という名前に変更する $ cd ~/src/LAPACK $ cp INSTALL/make.inc.gfortran make.inc # on Linux with lapack-3.2.1 or newer
INSTALL/make.incを編集する。PLAT, OPTS, NOOPTの値を以下のように変更
PLAT = _LINUX OPTS = -O2 -m64 -fPIC NOOPT = -m64 -fPIC
$ make lapacklib $ make clean $ cp lapack_LINUX.a libflapack.a $ export LAPACK=~/src/LAPACK/libflapack.a
(余談)UNIX環境に詳しくない方へ
exportというのはシステムに環境変数を追加するコマンドで、scipyをmake, make installするときにBLASとLAPACKという環境変数でそれぞれのファイルが指定されている必要があります。なので、最後にインストールするためrootにユーザを切り替える場合は改めて両方を設定しなければなりません。その際は、~/src/LAPACK/libflapack.aの用に相対パスで指定することはできません。上記の操作を行ったユーザ名がhogehogeだったとしたら
$ export BLAS=/home/hogehoge/src/BLAS/libfblas.a $ export LAPACK=/home/hogehoge/src/LAPACK/libflapack.a
のように指定してください。
numpyのインストール
$ # 1.5.1の場合 $ wget http://sourceforge.net/projects/numpy/files/NumPy/1.5.1/numpy-1.5.1.tar.gz/download $ tar xzvf numpy-1.5.1.tar.gz $ cd numpy-1.5.1 $ python setup.py build $ sudo python setup.py install
scipyのインストール
$ # 0.9.0の場合 $ wget http://sourceforge.net/projects/scipy/files/scipy/0.9.0/scipy-0.9.0.tar.gz/download $ tar xzvf scipy-0.9.0.tar.gz $ cd scipy-0.9.0 $ python setup.py build $ sudo python setup.py install
確認
numpyとscipyには、インストールが正常に完了しているかを確認するテストが含まれています。テストを実施するにはnoseというpythonモジュールが必要になります。noseのインストール方法はググって下さい。
>>> import numpy >>> numpy.test() # numpyのテストの実行 >>> import scipy >>> scipy.test() # scipyのテストの実行
これで特に大げさなことを言われなければインストールは成功です。