- 追加された行はこの色です。
- 削除された行はこの色です。
[[FrontPage]]
#contents
2012/03/08からのアクセス回数 &counter;
** 動機 [#vbcfbfa8]
インターフェース2011/12号にMATLABの特集があったので、Sageでoctaveを動かして
みたいと思ってインストールすることにしました。
バイナリもあり、簡単化と思ったらQtOctaveのマック版は起動後すぐにエラーがでたり、
バイナリのoctaveのプロットが上手くできませんでした。
MacPortsでもインストール順序とバージョンを調整して、やっと動くようになったので、
忘れないうちにメモすることにしました。
** MacPortsのインストール順序 [#a02e9a79]
単にQtOctaveをインストールするとgnuplotのところでエラーとなってしまいます。
また、octaveのバージョンが画像処理パッケージと合っていないため、octave-devel
版をインストールしました。
インストールの手順は以下の通りです。
#pre{{
$ sudo port install gnuplot
$ sudo port install octave-devel
$ sudo port install qtoctave-mac
}}
** さくらVPSへのoctaveのインストール [#u2d60d37]
sageからoctaveを使えるようにするために、さくらVPSにoctaveをインストールしました。
ソースからのインストールも試みましたが、原因不明でcoreダンプします。
そこで、以下の手順で既存のパッケージからのインストールを行いました。
#pre{{
$ sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
$ sudo yum install octave-devel octave-forge
}}
*** 最新のバージョンをソースから作成する [#za1d6ada]
signal等いつくかのパッケージが古くてMacとの互換性が保てないため、最新のバージョン
をソースから作成することにしました。
最初は、Mac版と同じoctave-3.4.3にしたのですが、作成されたバイナリが突然セグメンテーション
違反で落ちてしまいました。
ネットで調べたところ、最新の3.6.1ではCentOS 5.5でも落ちなくなったみたいなので、
このバージョンで作成することにしました。
手順は以下の通りです。
- ドキュメントの作成でエラーになるので、--enable-docs=noとします
- curlのバージョンが古いみたいでの、使わないように--without-curlとします
#pre{{
$ cd ~/src
$ wget ftp://ftp.gnu.org/gnu/octave/octave-3.6.1.tar.gz
$ tar xzf octave-3.6.1.tar.gz
$ cd octave-3.6.1
$ ./configure --without-curl' '--enable-docs=no
$ ./configure --without-curl --enable-docs=no --enable-shared
$ make
$ make check
}}
問題なければ、インストールします。((私の場合、sqrmts.ccで1カ所FAILになりました))
#pre{{
$ sudo make install
$ make clean
}}
アンインストールする場合のために、ソースは残しておきます。
削除する場合には、以下の様に行います。
#pre{{
$ sudo make uninstall
}}
*** GNUPlotのバージョンが合わない [#re3f053c]
上手く行ったと思ったのもつかの間でした。gnuplotのバージョンが4.2.5以上でないと動かないことが判明。
以下の手順でGNUPlotをインストールしました。configureのオプションをどうすればX11とPNGができるのかわからなくて苦労して見つけました。
#pre{{
$ sudo yum install gd-devel.x86_64
$ cd src
$ wget http://sourceforge.net/projects/gnuplot/files/gnuplot/4.4.4/gnuplot-4.4.4.tar.gz/download
$ $ cd gnuplot-4.4.4
$ ./configure --with-readline=gnu --with-libpng=/usr/lib --with-libz=/usr/lib \\
--with-png --with-gd --enable-history-file --with-x --x-libraries=/usr/lib \\
--x-includes=/usr/include/X11
}}
*** octave forgeのインストール [#a6e68fb6]
結局古いパッケージoctave-forge-bundle-20090607.tar.gzをダウンロードして、動かない部分は
最新に変えてインストールを試行錯誤しました。
- signalのインストールが大変
#pre{{
$ mkdir dl
$ wget http://sourceforge.net/projects/octave/files/Octave%20Forge/R2009-06-07/octave-forge-bundle-20090607.tar.gz
$ tar xzf octave-forge-bundle-20090607.tar.gz
$ cd octave-forge-bundle-20090607/main
$ octave
}}
パッケージのインストールは、
#pre{{
pkg install -local general-1.1.3.tar.gz
pkg install -local image-1.0.14.tar.gz
pkg install -local miscellaneous-1.0.11.tar.gz
pkg install -local struct-1.0.9.tar.gz
pkg install -local optim-1.0.17.tar.gz
pkg install -local specfun-1.0.8.tar.gz
pkg install -local control-1.0.11.tar.gz
pkg install -local io-1.0.9.tar.gz
pkg install -local plot-1.0.7.tar.gz
pkg install -local audio-1.1.4.tar.gz
pkg install -local signal-1.1.2.tar.gz
}}
もしも、-forgeが使えるようになったら、以下のコマンドが使えるようになります。
#pre{{
pkg list -forge
pkg install -local general
pkg update general
}}
*** octave 3.4.3のスクリプト互換について [#vababa67]
さくらVPSの方は、octave 3.6.1がベースなので、octave 3.4.3の時にdeprecatedに
なっていた関数が使えません。
そこで、以下の手順で3.4.3のdeprecated関数を3.6.1に移行しました。
- 3.4.3の/opt/local/share/octave/3.4.3/m/deprecated/のファイルをtarで保存
- 3.6.1のホームディレクトリ/octaveにdeprecatedディレクトリを作成し、ここに展開
.octavercに以下の行を追加
#pre{{
path(path, '.', 'ホームディレクトリ/octave/deprecated');
}}
** コメント [#q044caa4]
#vote(おもしろかった,そうでもない,わかりずらい)
皆様のご意見、ご希望をお待ちしております。
- さくらVPSでのoctaveのインストール方法を追加 -- [[竹本 浩]] &new{2012-03-25 (日) 19:04:42};
#comment_kcaptcha