done is better than perfect

自分が学んだことや、作成したプログラムの記事を書きます。すべての記載は他に定める場合を除き個人的なものです。

Install tmux, python, numpy, scikit-learn, scipy from source (CentOS 5.5)

表題のとおりです。とある事情があって既存の環境を壊すことができなかったので、HOMEディレクトリに環境を整えてみました。

インストール時に躓いたものだけメモ代わりに残しておきます。

インストールする先は/home/{user}/binです。これだとインストールしたソフトのPATH/home/{user}/bin/binとなってしまうので、 気になる人は適宜読み替えてください。 tar.gzのダウンロード先は/home/{user}/bin/srcです.

今回インストールするもの

こちらの記事を参考にさせていただきました.

tmux

tmuxをインストールする際にはlibeventが必要でした。まずはそちらをインストールします。

libeventについてはこちらを参照して下さい。

  1. libeventのダウンロード & 解凍
$ wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
$ tar xzvf libevent-2.0.21-stable.tar.gz
$ cd libevent-2.0.21-stable
  1. configure & インストール
$ ./configure --prefix=/home/{user}/bin
$ make
$ make install
$ cp ./libevent-2.0.21-stable/libevent.pc ~/bin/lib/pkgconfig
$ export PKG_CONFIG_PATH=/home/masatana/bin/lib/pkgconfig
  1. LD_LIBRARY_PATHの設定 これを怠ると,tmuxのインストールのときにlibevent not foundとかなんとか言われて怒られます. zshを使っている方ならば,.zshrcなどに以下の設定を書いておきましょう.
export LD_LIBRARY_PATH=/home/{user}/bin/lib
  1. tmuxのダウンロード & 解凍
$ wget http://downloads.sourceforge.net/tmux/tmux-1.9a.tar.gz
$ tar xzvf tmux-1.9a.tar.gz
$ cd tmux-1.9a
  1. configure & インストール
$ ./configure --prefix=/home/{user}/bin
$ make
$ make install

これで入ると思います.

Python & pip

これはあまり大変ではありません.ドキュメントのとおりにインストールします.

$ wget https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz
$ tar xzvf Python-2.7.6.tgz
$ cd Python-2.7.6
$ ./configure --prefix=/home/{user}/bin
$ make && make install

Pythonが入っていることが確認できたら,次はpipをインストールします.

$ wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py
$ python get-pip.py

sqlite3を使う人は先にpython入れる前にこれをインストールしておくといいかも知れません.

$ wget https://www.sqlite.org/2014/sqlite-autoconf-3080403.tar.gz
$ tar xzvf sqlite-autoconf-3080403.tar.gz
$ cd sqlite-autoconf-3080403.tar.gz
$ ./configure --prefix=/home/{user}/bin
$ make && make install

numpy, scipy, scikit-learnのインストール

scipyは依存も多く,苦労しました.

numpyとscikit-learn

これに関しては先ほど入れたpipを使うだけです.

$ pip install numpy
$ pip install scikit-learn

scipy

scipyをインストールするためにはblaslapackが必要です.まずそちらをインストールします.

  1. BLASのダウンロード & 解凍 & configure
$ wget http://www.netlib.org/blas/blas.tgz
$ tar xzvf blas.tgz
$ cd BLAS
$ ./configure --prefix=/home/{user}/bin
  1. BLASのインストール
$ gfortran -O3 -std=legacy -m64 -fno-second-underscore -fPIC -c *.f
$ ar r libfblas.a *.o
$ ranlib libfblas.a
$ export BLAS=/home/{user}/bin/src/BLAS/libfblas.a
  1. lapackのダウンロード
$ wget http://www.netlib.org/lapack/lapack.tgz
$ tar xzvf lapack.tgz
$ cd lapack-3.5.0
$ cp INSTALL/make.inc.gfortran make.inc
  1. lapackのmake.incの編集
OPTS= -O2 -m64 -fPIC
NOOPT = -m64 -fPIC
LOADOPTS = -fPIC
  1. lapackのインストール
$ make && make lapacklib
$ cp liblapack.a libflapack.a
$ export LAPACK=/home/{user}/bin/src/lapack-3.5.0/libflapack.a

これで,scipyがインストールできると思います.

$ pip install scipy