GNU Octave 2.1.x 日本語マニュアル/Octaveのインストールと設定
WINDOWSシステムへのOctaveのインストールと設定

Octaveのシステムの最新バージョンを確認します。ここでは、octave-3.6.1の例を示しますので、適宜読み替えてください。
WINDOWSシステムへのOctaveのインストールと設定

http://www.gnu.org/software/octave/download.html
WINDOWSシステムへのOctaveのインストールと設定

http://www.octave.org/wiki/index.php?title=Octave_for_Windows
WINDOWSシステムへのOctaveのインストールと設定

今回は、Visual C++ 2010でコンパイルしたOctaveをインストールします。 そのため、マイクロソフトの’Microsoft Visual C++ 2010 SP1 Redistributable Package (x86)’を、あらかじめインストールしておきます。
WINDOWSシステムへのOctaveのインストールと設定

http://www.microsoft.com/downloads/ja-jp/details.aspx?familyid=c32f406a-f8fc-4164-b6eb-5328b8578f03
WINDOWSシステムへのOctaveのインストールと設定

Sourceforgeから、OctaveのWindows用インストーラーをダウンロードし、インストールします。
WINDOWSシステムへのOctaveのインストールと設定

ダウンロードするファイル:
WINDOWSシステムへのOctaveのインストールと設定

octave-3.6.1-vs2010-setup-1.exe
WINDOWSシステムへのOctaveのインストールと設定

http://sourceforge.net/projects/octave/files/Octave%20Windows%20binaries/
WINDOWSシステムへのOctaveのインストールと設定

startupフォルダにあるoctavercファイルを書き換えて、パスを設定します。 この例では、DドライブにOctaveをインストールしたシステムで、communicationsツールの関数を使うために、’D:\Octave-3.6.1\share\octave\3.6.1\m\startup\octaverc’を書き換えることを想定しています。この例では、Octaveのバージョンは3.6.1です。
WINDOWSシステムへのOctaveのインストールと設定

以下の行を追加する。
WINDOWSシステムへのOctaveのインストールと設定

Octaveアイコンをダブルクリックします。'1+1'と入力し、Enterしたら、
WINDOWSシステムへのOctaveのインストールと設定

となれば、インストール成功です。
WINDOWSシステムへのOctaveのインストールと設定

Octaveではエディタとしてnotepad++を推奨しています。別途、日本語 notepad++をダウンロードしてインストールしておいてください。 mファイルの編集に使います。 日本語notepad++では、エディタのモードをMATLABに設定すると、GNU OCTAVEのキーワードをハイライトしてくれます。
WINDOWSシステムへのOctaveのインストールと設定

インストール後に以下の設定を行います。
WINDOWSシステムへのOctaveのインストールと設定

メニューバーから日本語フォントを設定します。
WINDOWSシステムへのOctaveのインストールと設定

1)『設定』-『スタイル設定』-『フォント』で、フォント名を『メイリオ』に設定します。 (『MSゴシック』、『MS明朝』等でも良いがあまり美しくない。)
WINDOWSシステムへのOctaveのインストールと設定

2)『フォント名を他のスタイルにも適用』にチェックをいれる。
WINDOWSシステムへのOctaveのインストールと設定

3)『フォントサイズを他のスタイルにも適用』にチェックをいれる。
WINDOWSシステムへのOctaveのインストールと設定

4)『保存して閉じる』
WINDOWSシステムへのOctaveのインストールと設定

UNIX システムにおいて,スクラッチからOctave をインストールするための手順を紹介します。
WINDOWSシステムへのOctaveのインストールと設定

2 シェルスクリプト‘configure’を実行します。 これは,お使いのシステムが持っている(持っていない)機能を判定し,‘Makefile.in’という名前のファイルの各々から,‘Makefile’という名前のファイルを生成します。
WINDOWSシステムへのOctaveのインストールと設定

Octave をビルドするときに,最も頻繁に使用されるconfigure オプションの要約を示します。
WINDOWSシステムへのOctaveのインストールと設定

prefix 以下のサブディレクトリにOctave をインストールします。 prefix の初期値は‘/usr/local’です。
WINDOWSシステムへのOctaveのインストールと設定

ディレクトリdir からOctave のソースを探します。
WINDOWSシステムへのOctaveのインストールと設定

Fortran コンパイラが利用可能であっても,f2cを使用します。
WINDOWSシステムへのOctaveのインストールと設定

Fortran コードをコンパイルするためにf77を使用します。 使用したいコンパイラ 名をオプション引数として指定することもできます。 たとえば,--with-f77=g77 は,Fortran コンパイラ名をg77にセットします。
WINDOWSシステムへのOctaveのインストールと設定

共有ライブラリを作成します。 もし--enable-lite-kernelまたは動的ロード機 能を使う予定ならば,おそらくこのオプションを使用したいことでしょう。 このオ プションにより,‘.oct’ファイルはずっと小さくなります。 また,あるシステムに おいては,動的リンク関数を使用するために,共有ライブラリをビルドするために 必要でしょう。
WINDOWSシステムへのOctaveのインストールと設定

お使いのシステムにlibstdc++の共有版がないときに,それをビルドしたいとも思うかもしれません。 HP-PA アーキテクチャでlibstdc++ のバージョン2.7.2の共有版をビルドするためには,パッチが必要だということに注意してください。
WINDOWSシステムへのOctaveのインストールと設定

そのパッチは,以下のURL から手に入ります:
WINDOWSシステムへのOctaveのインストールと設定

ftp://ftp.cygnus.com/pub/g++/libg++-2.7.2-hppa-gcc-fix
WINDOWSシステムへのOctaveのインストールと設定

dlopenを使用し,外部でコンパイルされた関数を動的にリンクする機能をOctave に持たせるようにします。 このオプションは,それらの関数を実際にもっているシ ステムにおいてのみ動作します。 もしこの機能を使おうと計画しているならば,お そらく,‘.oct’ファイルのサイズを減らすための--enable-sharedも使用すべき です。
WINDOWSシステムへのOctaveのインストールと設定

shl_loadを使用し,外部でコンパイルされた関数を動的にリンクする機能をOctave に持たせるようにします。 このオプションは,それらの関数を実際にもってい るシステム(HP-UX のみ)においてのみ動作します。 もしこの機能を使おうと計 画しているならば,おそらく,‘.oct’ファイルのサイズを減らすための--enable- sharedも使用すべきです。
WINDOWSシステムへのOctaveのインストールと設定

より小さなカーネルをコンパイルします。 現在のところ,このオプションは,動的 リンク関数dlopenまたはshl_loadを必要とします。 また,結果として,コンパ イル時ではなくリンク時に関数をロードできるようになります。
WINDOWSシステムへのOctaveのインストールと設定

Octave に含まれているBLAS とLAPACK の汎用バージョンをコンパイルして利用します。 初期設定では,configure は,お使いのシステムにあるBLAS およびLAPACK 行列ライブラリ(ベンダーがチューニングしたライブラリだけでなく,フリーのATRAS3.0 のような最適化されたBLAS 実装を含む)を最初に探します。 (最適化BLAS の利用によって,一般に,行列演算が数倍高速になります。) システムにあるBLAS/LAPACK ライブラリが何らかの理由により問題を抱えているときにのみ,このオプションを使用してください。 特定のBLAS ライブラリを指定するために--with-blas=lib,あるいはconfigure が自動的にチェックを行わない-llibも使用することができます。
WINDOWSシステムへのOctaveのインストールと設定

configure によって使用されるコマンドラインオプションについてのさらなる情報について,ファ イル‘INSTALL’を参照してください。 そのファイルには,ソースが置いてある以外のディレクト リでコンパイルを行うための方法も書かれています。
WINDOWSシステムへのOctaveのインストールと設定

2 make を実行します。
WINDOWSシステムへのOctaveのインストールと設定

GNU make の最近のバージョンが必要です。 その他のmake プログラムで動作するようにOctaveのメイクファイルを修正することは,おそらく時間の無駄です。 かわりにGNU make を入手してコンパイルすることを推奨します。
WINDOWSシステムへのOctaveのインストールと設定

プロットするには,お使いのシステムにgnuplot がインストールされていることが必要になります。 gnuplot はコマンド駆動型の対話的機能を持つプロットプログラムです。 gnuplot は著作権を主張していますが,自由に配布することができます。 gnuplot に‘gnu’ が含まれているのは偶然です? これはGNUプロジェクトあるいは,周辺的な意味においてFSFとは関連がありません。
WINDOWSシステムへのOctaveのインストールと設定

Octave をコンパイルするためには,最近のバージョンのGNU Make が必要になります。 g++2.7.2 以降も必要です。 バージョン2.8.0 あるいはegcs 1.0.x も動作するでしょう。 より新しいバージョンも動作するでしょうが,C++ は未だに発展しているため,何らかのトラブルに巻き込まれることもあり得ます。
WINDOWSシステムへのOctaveのインストールと設定

もはやlibg++が存在する必要はありませんが,libstdc++のGNU 実装は存在しなければなりません。 g++ 2.7.2 をお使いならば,libstdc++はlibg++とともに配布されています。 しかし,後のバージョンについては,libstdc++は別個に配布されています。 egcs について,libstdc++はコンパイラの配布物に含まれています。
WINDOWSシステムへのOctaveのインストールと設定

もしパーサを修正する予定があるならば,GNU bisonおよびflex も必要になります。 もしドキュメント類を修正するならば,Octave とともに配布されているmakeinfoプログラムに対するパッチのほか,Gnu Texinfo が必要です。
WINDOWSシステムへのOctaveのインストールと設定

GNU Make,gcc,libstdc++,gnuplot,bison,flexおよびTexinfo は,すべて,多数の匿名ftp アーカイブから入手することができます。 主要なサイトはftp.gnu.orgですが,ここはしばしば混んでいます。 ftp.gnu.orgにあるソフトウエアをミラーするサイトの一覧は,ftp://ftp.gnu.org/pub/gnu/GNUinfo/FTPからの匿名ftp により入手できます。
WINDOWSシステムへのOctaveのインストールと設定

もしFortran コンパイラを持っていない,あるいはお使いのFortran コンパイラが伝統的なUNIXf77 のようには動作しないならば,Fortran をC に翻訳するf2cを持っている必要があるでしょう。 多くの匿名ftp サイトからf2cを得ることができます。 f2cの最新版は,netlib.att.comからいつでも入手できます。
WINDOWSシステムへのOctaveのインストールと設定

Linux が動作しているアイドル状態のPentium 133MHz において,何もかもをコンパイルするためには,共有ライブラリをビルドするかどうかによって,1時間半から3時間かかるでしょう。
WINDOWSシステムへのOctaveのインストールと設定

動作には,約100 メガバイトのディスク容量が必要となります(デバッグシンボル付きでコンパイルしなければ,かなり少なくなります)。 デバッグ情報を含めないためには,単に‘make’と入力する代わりに,以下のコマンドを使用してください。
WINDOWSシステムへのOctaveのインストールと設定

make CFLAGS=-O CXXFLAGS=-O LDFLAGS=2 もしOctave のコンパイル中にエラーに遭遇したらならば,まず最初に,問題の回避策や解決策 があるかどうかを確認するため,既知の問題点のリストをチェックしてください。 そうでなければ,バグ報告の仕方についての情報に関して,付記B [Trouble]を参照してください。
WINDOWSシステムへのOctaveのインストールと設定

2 いちどOctave のコンパイルに成功すれば,‘make install’を実行します。
WINDOWSシステムへのOctaveのインストールと設定

このコマンドは,Octave のコピー,そのライブラリ,およびそのドキュメントを指定したディレクトリにインストールします。 内容を分配するとき,Octave は以下のディレクトリにインストールされます。 以下の表において,prefix の初期値は‘/usr/local’であり,version はインタプリタのカレントバージョン番号を表し,arch はOctave をインストールしたコンピュータの種類(たとえば‘i586-unknown-gnu’)です。
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/bin’ 直接実行したいと考えるであろうOctave とその他のバイナリ
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/lib’ libcruft.a やliboctave.a のようなライブラリ
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/share’ アーキテクチャとは独立なデータファイル
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/include/octave’ Octave とともに配布されているインクルードファイル
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/man/man1’ Octave を解説しているUNIX 型のman page
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/info’ Octave を解説するinfo ファイル
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/share/octave/version/m’ Octave とともに配布されている関数ファイル; これにはOctave のバージョンが含まれているので,複数のバージョンのOctave を同時にインストールできます。
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/lib/octave/version/exec/arch’ ユーザではなくOctave によって実行されることになる実行プログラム
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/lib/octave/version/oct/arch’ 動的にロードされるオブジェクトファイル
WINDOWSシステムへのOctaveのインストールと設定

‘prefix/share/octave/version/imagelib’ Octave とともに配布されている画像ファイル
WINDOWSシステムへのOctaveのインストールと設定

この節では,Octave をインストールしている間に現れる問題(および,本当は何かが悪いわけではない問題)の一覧を掲載しています。
WINDOWSシステムへのOctaveのインストールと設定

2 SCO システムの一部では,HAVE_TERMIOS_Hが‘config.h’内で定義されているときに,infoがコンパイルに失敗します。 ‘info/config.h’ から単に定義を取り除くことにより,コンパイルできるようになります。
WINDOWSシステムへのOctaveのインストールと設定

2 configureがdlopen,dlsym,dlcloseおよびdlerrorを発見したが,ヘッダファイル‘dlfcn.h’を見つけられなかったとき,ヘッダファイルのソースを見つけて,それをディレクトリ‘usr/include’にインストールする必要があります。
WINDOWSシステムへのOctaveのインストールと設定

2 ‘.oct’ファイルのビルドが動きません。
WINDOWSシステムへのOctaveのインストールと設定

おそらくlibstdc++の共有版を使っているのでしょう。 HP-PAアーキテクチャ上でlibstdc++のバージョン2.7.2 を共有版をビルドするには,パッチが必要です。 そのパッチは,以下のURLで見つけることができます。
WINDOWSシステムへのOctaveのインストールと設定

ftp://ftp.cygnus.com/pub/g++/libg++-2.7.2-hppa-gcc-fix2 Alpha システムの中には,libdxmlライブラリについて問題をもっているものがあります。 結果として,Octave によって呼び出される線形代数ルーチンにおいて浮動小数点エラーまたはsegmentation faults が発生します。 もしこの問題に遭遇したならば,configure スクリプトを,SPECIAL_MATH_LIBが-ldxmlをセットしないように修正すべきです。
WINDOWSシステムへのOctaveのインストールと設定

2 FreeBSD システムでは,いくつかの内部定数を初期化している間に,Octave がハングするかもしれません。 これを修正するには,kernel configuration files(典型的には‘/sys/i386/conf’なるディレクトリにあります)において,options MATH_EMULATEのかわりに,options GPL_MATH_EMULATEを使用してください。
WINDOWSシステムへのOctaveのインストールと設定

この変更を行った後,カーネルを再構築し,インストール後は再起動する必要があるでしょう。
WINDOWSシステムへのOctaveのインストールと設定

2 ‘sighandlers.cc’をコンパイルしている間に,以下のエラーpassing `void (*)()' as argument 2 of`octave_set_signal_handler(int, void (*)(int))'あるいはwarning: ANSI C++ prohibits conversion from `(int)' to `(...)'に遭遇したならば,関数に関する適切なプロトタイプを追加するため,gcc のインクルードサブディレクトリにあるいくつかのファイルを編集する必要があります。 たとえば,Ultrix 4.2 は,‘signal.h’にsignal関数についての適切なプロトタイプとSIG_IGNマクロを追加する必要があります。
WINDOWSシステムへのOctaveのインストールと設定

あるシステムでは,SIG_IGNマクロは以下のように定義されます:
WINDOWSシステムへのOctaveのインストールと設定

signal関数に対するプロトタイプ宣言にマッチするために,以下のようなすべきであるときには。
WINDOWSシステムへのOctaveのインストールと設定

この変更は,SIG_DFLおよびSIG_ERRシンボルについても行うべきです。さらに,‘sys/signal.h’にある定義を変更する必要があるかもしれません。
WINDOWSシステムへのOctaveのインストールと設定

gccが一連のヘッダファイルの修正版をインストールするときには,gcc fixincludesおよびfixprotoスクリプトは,おそらく修正されるべきです。 しかし,それはまだ行われているとは思えません。
WINDOWSシステムへのOctaveのインストールと設定

‘/usr/include’にあるファイルを変更すべきではありません。 以下のコマンドを実行することにより,gccのインクルードディレクトリツリーを見つけることができます。
WINDOWSシステムへのOctaveのインストールと設定

gcc -print-libgcc-file-name
WINDOWSシステムへのOctaveのインストールと設定

gccインクルードファイルのディレクトリは,通常は,‘libgcc.a’というファイルを含むディレクトリと同じところから始まります。
WINDOWSシステムへのOctaveのインストールと設定

2 Fortran サブルーチンの中には,Sun のFortran コンパイラの旧版を使用すると,コンパイルに失敗するものがあるかもしれません。 サブディレクトリ‘libcruft’にあるFortran サブルーチンをコンパイルしているときに,以下のようなエラーが出るならば,コンパイラをアップグレードし,最適化をオフにしてコンパイルを試みるべきです。
WINDOWSシステムへのOctaveのインストールと設定

zgemm.f:
WINDOWSシステムへのOctaveのインストールと設定

zgemm:
WINDOWSシステムへのOctaveのインストールと設定

warning: unexpected parent of complex expression subtree
WINDOWSシステムへのOctaveのインストールと設定

zgemm.f, line 245: warning: unexpected parent of complex
WINDOWSシステムへのOctaveのインストールと設定

expression subtree
WINDOWSシステムへのOctaveのインストールと設定

warning: unexpected parent of complex expression subtree
WINDOWSシステムへのOctaveのインストールと設定

zgemm.f, line 304: warning: unexpected parent of complex
WINDOWSシステムへのOctaveのインストールと設定

expression subtree
WINDOWSシステムへのOctaveのインストールと設定

warning: unexpected parent of complex expression subtree
WINDOWSシステムへのOctaveのインストールと設定

zgemm.f, line 327: warning: unexpected parent of complex
WINDOWSシステムへのOctaveのインストールと設定

expression subtree
WINDOWSシステムへのOctaveのインストールと設定

pcc_binval: missing IR_CONV in complex op
WINDOWSシステムへのOctaveのインストールと設定

make[2]: *** [zgemm.o] Error 1
WINDOWSシステムへのOctaveのインストールと設定

2 NeXT システムにおいて,‘Array.cc’および‘Matrix.cc’をコンパイルしているときに,以下のエラーが出るならば,-gオプションをつけずにこれらファイルを再コンパイルしてください。
WINDOWSシステムへのOctaveのインストールと設定

/usr/tmp/cc007458.s:unknown:Undefined local symbol LBB7656
WINDOWSシステムへのOctaveのインストールと設定

/usr/tmp/cc007458.s:unknown:Undefined local symbol LBE7656
WINDOWSシステムへのOctaveのインストールと設定

2 SunOS システムでは,shell cmd の呼び出しやページャが動作しないと報告をしてくる人々がいます。 これは明らかに,libg++をコンパイルするときに,G_HAVE_SYS_WAITを1 の代わりに0 としていることによるものです。
WINDOWSシステムへのOctaveのインストールと設定

2 NeXT システムでは,‘libsys_s.a’をリンクすることが以下の関数をresolve することに失敗するかもしれません。
WINDOWSシステムへのOctaveのインストールと設定

_tcgetattr
WINDOWSシステムへのOctaveのインストールと設定

_tcsetattr
WINDOWSシステムへのOctaveのインストールと設定

_tcflow
WINDOWSシステムへのOctaveのインストールと設定

これらは‘libposix.a’の一部です。 不幸にも,-posixつきでOctave をリンクすることは,以下の未定義シンボルが生じます。
WINDOWSシステムへのOctaveのインストールと設定

.destructors_used
WINDOWSシステムへのOctaveのインストールと設定

.constructors_used
WINDOWSシステムへのOctaveのインストールと設定

_objc_msgSend
WINDOWSシステムへのOctaveのインストールと設定

_NXGetDefaultValue
WINDOWSシステムへのOctaveのインストールと設定

_NXRegisterDefaults
WINDOWSシステムへのOctaveのインストールと設定

.objc_class_name_NXStringTable
WINDOWSシステムへのOctaveのインストールと設定

.objc_class_name_NXBundle
WINDOWSシステムへのOctaveのインストールと設定

One kluge around this problem は,‘libposix.a’から‘termios.o’ を展開し,それをOctaveの‘src’ディレクトリに置き,makefile 中でリンクすべきファイルのリストにそれを加えることです。 この問題を解決するための方法について提案があれば歓迎します。
WINDOWSシステムへのOctaveのインストールと設定

2 もしOctave が浮動小数点例外ですぐにクラッシュするなら,無限大とNaN に対するIEEE 浮動小数点値を初期化することに失敗しているようです。
WINDOWSシステムへのOctaveのインストールと設定

もしお使いのシステムが,実際にはIEEE 演算をサポートしているならば,Octave の内部変数infinity とNaN を正しく初期化するために,‘lo-ieee.cc’ 内の関数octave_ieee_initを修正することにより,この問題を修正することができるでしょう。
WINDOWSシステムへのOctaveのインストールと設定

もしお使いのシステムが,IEEE 演算をサポートしておらず,Octave のconfigure スクリプトがそれを正しく決定できていないならば,HAVE_ISINF,HAVE_FINITEおよびHAVE_ISNANを定義しないように,ファイル‘config.h’を編集することにより,この問題を解決することができます。
WINDOWSシステムへのOctaveのインストールと設定

いずれのケースにおいても,バグとしてこれを報告してください。 なぜならば,行うべき適切なことを自動的に決定するために,Octave のconfigure スクリプトを修正することが可能かもしれないからです。
WINDOWSシステムへのOctaveのインストールと設定

2 Octave のバイナリ配布物を別のディレクトリにインストールした後では,Emacs のrun-octaveコマンドが動作しません。 Emacs はinferior-octave-startupのaccept-process-output内でハングします。
WINDOWSシステムへのOctaveのインストールと設定

これは,comint パッケージを使用したシェルスクリプトを実行することに関する問題であるように思われます。 シェルスクリプトについての必要性を消去するために,Octave をインストールする方法を変更することにより,この問題を回避できます。 ソース配布物を使用するとOctaveのコンパイルとインストールの両方を行うことができます。
WINDOWSシステムへのOctaveのインストールと設定

標準のディレクトリにバイナリ配布物を再インストールしてもよいです。 あるいは,Octave のシェルスクリプトラッパにあるコマンドをシェルのスタートアップファイル(およびOctave を使用している他の人のシェルスタートアップファイル)にコピーし,ファイル‘octave.bin’を‘octave’にリネームしてもよいです。