C MEX 関数のビルド
メモ
MATLAB® R2023a 以降で clibPublishInterfaceWorkflow を使用してコードを作成し、C/C++ ライブラリの関数を直接呼び出すことが推奨されます。また、最新の C++ の機能とC++ 用の MATLAB データ APIを使用して MEX 関数を作成するには、MATLAB (MEX ファイル) から呼び出せる C++ 関数の記述を参照してください。
この例では、C MEX 関数の例 arrayProduct をビルドする方法を説明します。この例を使用して、システムの C ビルド構成を検証します。C++ MEX 関数のビルドの詳細については、C++ MEX プログラムのビルドを参照してください。
サポートされるコンパイラがインストールされていることを確認します。コンパイラのインストールの詳細については、ベンダーの Web サイトにアクセスしてください。
mex -setup C
ソース MEX ファイルをパス上の書き込み可能フォルダーにコピーします。
copyfile(fullfile(matlabroot,'extern','examples','mex','arrayProduct.c'),'.','f')
mex コマンドを呼び出して、関数をビルドします。
mex arrayProduct.c -R2018a
このコマンドはファイル arrayProduct. を作成します。ここで、extext は、関数 mexext によって返される値です。
関数をテストします。関数 arrayProduct はスカラーを受け取って、1 行 N 列の行列で乗算します。arrayProduct を MATLAB 関数と同様に呼び出します。
s = 5; A = [1.5, 2, 9]; B = arrayProduct(s,A)
B =
7.5000 10.0000 45.0000