CLAPACK

boostだけだと関数が足りないのでLAPACKC言語版CLAPACKを使ってみる。ATLASを一緒に使うと速いらしいがとりあえずは動けばいいのでそれは使わず。本格的に計算させるときはATLASを使ってCLAPACKをコンパイルし直そう。というのもATLASを使ったCLAPACKのコンパイルの仕方がいまいちよくわからんから。。。
テストは端折るとすると、インストールはこんな感じで。


cp INSTALL/make.inc.LINUX make.inc
make f2clib
make blaslib
cd SRC; make
以降はrootで

cp lapack_LINUX.a /usr/local/lib64/liblapack.a
cp blas_LINUX.a /usr/local/lib64/libblas.a
cp F2CLIBS/lib{F,I}77.a /usr/local/lib64/
ldconfig
cp clapack.h F2CLIBS/f2c.h /usr/local/include
chmod a+r /usr/local/include/f2c.h /usr/local/include/clapack.h
使うときは、

extern "C"
{
#include "f2c.h"
#include "clapack.h"
}
として、

g++ main.cc -llapack -lblas -lF77 -lI77
などとする。
参考文献
http://www.netlib.org/clapack/index.html
http://www.netlib.org/clapack/readme.install
http://www.a.mei.titech.ac.jp/~kabe/calcsoft/library/lapack/clapack/index.html
http://www.alab.t.u-tokyo.ac.jp/~bond/doc/clapack.html
http://www.eml.hiroshima-u.ac.jp/member/staff/tamaki/LTI-Lib/index.php?LAPACK
http://www.eml.hiroshima-u.ac.jp/member/staff/tamaki/LTI-Lib/index.php?LAPACK%2BATLAS