外部インタフェース/API    

UNIXでの作成のカスタマイズ

UNIXシステムでは、MEX-ファイルの作成には、コンパイルとリンクの2つのステージがあります。

コンパイルステージ

コンパイルステージでは、以下のことを行う必要があります。

リンクステージ

リンクステージでは、以下のことを行う必要があります。

Fortran MEX-ファイルに対して、シンボルはすべて小文字で、アンダースコアが加えられることがあります。個々の情報に対しては、verboseモードでmexスクリプトを呼び込み、出力を調べてください。

ビルドオプション

作成プロセスのカスタマイズのために、オプションファイルを修正する必要があります。オプションファイルは、上記の一般の処理に対応するコンパイラ固有のフラグを含みます。オプションファイルは、変数の割り当てから成り立っています。各変数は、作成プロセスの論理部分を表わします。MATLABが提供するオプションファイルは、<matlab>/binにあります。mexスクリプトがオプションファイルを検索する方法は、「UNIXでのデフォルトオプションファイルの位置」に記述されています。

カスタマイズを柔軟に行うために、オプションファイル内でスイッチを使ってmexスクリプトのonとoffを行う2セットのオプションがあります。これらのオプションは、"デバッグモード"での作成と"最適化モード"での作成に対応します。これらはそれぞれ、呼び込まれる"ドライバ"に対して1組の変数DEBUGFLAGSOPTIMFLAGSによって表わされます(Cコンパイラに対してはCDEBUGFLAGS、Fortranコンパイラに対しては FDEBUGFLAGS、リンカに対してはLDDEBUGFLAGSで、OPTIMFLAGSも同様です)。

これらの特殊な変数とは別に、mexオプションファイルは、3つのモード(Cのコンパイル、Fortranのコンパイル、リンク)に対し呼び込まれる実行ファイルと、各ステージに対するフラグを定義します。各言語のソースファイルを含むMEX-ファイルに対してリンクされなければならないライブラリのリストを与えることもできます。

変数はつぎのようにまとめられます。

変数
Cコンパイラ
Fortranコンパイラ
リンカ
実行可能
CC
FC
LD
フラグ
CFLAGS
FFLAGS
LDFLAGS
最適化
COPTIMFLAGS
FOPTIMFLAGS
LDOPTIMFLAGS
デバッグ
CDEBUGFLAGS
FDEBUGFLAGS
LDDEBUGFLAGS
追加ライブラリ
CLIBS
FLIBS
----

これらの変数のデフォルト設定の特性について、つぎのことを行えます。


 Windowsでのデフォルトオプションファイル Windowsでの作成のカスタマイズ