Octave-2.1.xのインストール

[Octave] [ベンチマーク] [ATLAS & FFTWの効果]

Octave開発バージョンのインストール

ディストリビューションによっては、octave-2.1.x 系のパッケージを用意 しているものもある。例えば、Fedra Core, SuSE, Debian など。自分のディ ストリビューションに合ったパッケージをインストールするのが最もラクであ ろう。

しかし、最新版をインストールしたい、となるとそうもいかない。開発バー ジョン系列の少し古いものでは、ささいなバグもいくつか報告されており、そ の時点での最新版をインストールするのが無難だろう。また、Vine には、 2.0.17 のパッケージしか公式には存在しない。そこで、最新版のパッケージ を作成してみる。

ひながたSRPMとソースをインストール

ここでは、Fedra Core のSRPM を雛型としてインストールし、そのSPECファイルを修正して Vine Linux 3.1 用のRPMパッケージを作成する。

% rpm -ivh octave-2.1.50-9.src.rpm 

最新版ソースをゲットして、rpm/SOURCES に置く。

ATLAS, FFTWをインストール

行列演算の高速化のために、ATLASをあらかじめコンパ イルし、あらかじめインストールしておくと、octaveコンパイル時に自動的に ATLASが組み込まれる。ATLAS によるOctaveの高速化(chibaf氏のページ)を参照。

FFTWも同様にインストールしておく とDFT,FFTが高速になる。octave-2.1.64 の configure では、fftw-3 系 を要 求しているように見えるので、Vine の fftw-2.1.5 のSPRMのソースを更新し て、RPMパッケージを作成し、インストールする。SPECファイルを書き換える 時には、2.1.5 当時とは、{double,single}/doc フォルダ内の構造が変わって いるので、注意する。

Octave RPMパッケージ作成

rpm/SPECS/octave.spec を、最新バージョン用かつ Vine用に書き換える。要は、 2.1.50と書かれた部分をすべて、ダウンロードした最新バージョン番号(2.1.64)と修正し、BuildPrereq: の中にある、 libstdc++-devel を libstdc++3-devel に修正して、ビルド&パッケージ作成 コマンドを実行する。

% rpm -ba octave.spec

すると、足りないパッケージがリストされるので、rootになって、apt-get を使ってインストールしてから、再度rpmビルドコマンド実行。

# apt-get install bison flex libtermcap-devel zlib-devel ncurses-devel lapack gperf gcc-g77

ただし、apt-get が使えるインターネット環境にマシンがない場合は、 Vine Plus やら Vine Seed やらから必要なパッケージを手作業で集める必要 があるので面倒。なので、Vine Linux 3.1 において、octave-2.1.64 をリビ ルドするのに必要なパッケージをFTPサイト にまとめて置いた。結構コンパイルには時間がかかる...。

octave-forgeのインストール

Matlab互換関数の多くが使用可能になる。ただし使用はもちろん自己責任 で。

% tar zxvf octave-forge-2004.11.16.tar.gz
% cd octave-forge
% ./configure --with-path=where_octave_forge_to_install
% make -k
% make check
% make install

AMD Athlon64 64bit Linux 上でのインストール

Fedora Core3 X86_64 上で、octave をインストールした。ATLAS, fftw を導入するのは Vine と同じ。そのまま rpmbuild -ba octave.spec を実行す ると、(ATLASの) libf77blas.a をコンパイルするときに -fPIC を入れろとエ ラーメッセージが指摘するが、ATLASコンパイル時に -fPIC を入れてもエラー メッセージは同じであった。

そこで、Shared Library のリンクをやめて、Static library をリンクし てoctave をコンパイルすることにした。octave.spec の修正点は、configure のオプションから --enable-dl を外し、--enable-shared=no --enable-static=yes と変更した。

ダウンロード

面倒くさいので、Octave-forge は RPMパッケージにしていません。適当な ところで展開して下さい。alternativeは含んでいません。以下のパッケージ は無保証です。

akira@rsch.tuis.ac.jp