Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

MEX 関数の実行とデバッグ

MEX 関数を呼び出すときは、元の MATLAB® アルゴリズムで使用する入力と同じ入力を渡します。MEX 関数には、coder.Constant またはいずれの coder.Type クラスも渡さないでください。これらのクラスは関数 codegen でのみ使用できます。

MATLAB Coder™ によって生成された MEX 関数を実行するには、MEX 関数が必要とするすべてのツールボックスのライセンスがなければなりません。たとえば、Computer Vision Toolbox™ 関数または System object™ を使用する MATLAB アルゴリズムから MEX 関数を生成した場合、その MEX 関数を実行するには Computer Vision Toolbox のライセンスが必要です。

MATLAB をアップグレードした後には、新しいバージョンで実行する前に MEX 関数をリビルドします。

MEX 関数のデバッグ

MEX 関数をデバッグするには、関数 disp または fprintf を使用して MEX 関数の変数の内容を検査します。あるいは、関数 save を使用して、MEX 関数の変数を MAT または ASCII 形式でファイルに保存することもできます。Data Read and Write Considerationsを参照してください。

C/C++ デバッガーを使用した MEX 関数のデバッグ

C/C++ デバッガーを使用して MEX 関数をデバッグするには、MEX 構成オブジェクトのプロパティ EnableDebuggingtrue に設定します。

cfg = coder.config('mex');
cfg.EnableDebugging = true;
codegen -config cfg foo_mex
あるいは、次のコマンドを実行して MEX 関数をデバッグできます。

codegen -g foo_mex

foo_mex ファイルは、デバッグする MEX ファイルです。C または C++ デバッガーを使用してこのファイルをデバッグできます。Microsoft Windows プラットフォームでの C/C++ デバッガーを使用したデバッグの詳細については、Microsoft Windows プラットフォームでのデバッグを参照してください。

Linux® または Mac プラットフォームでの C/C++ デバッガーを使用したデバッグの詳細については、Linux プラットフォームでのデバッグまたはmacOS プラットフォームでのデバッグを参照してください。