C++ MEX プログラムのビルド
MATLAB® mex
を使用して C++ MEX アプリケーションをビルドし、環境を設定して C++ ソース コードをコンパイルします。
サポートされるコンパイラ
C++11 をサポートするコンパイラを使用します。サポートされているコンパイラの最新の一覧については、サポートされるコンパイラ Web サイトを参照してください。
mex
コマンドによる .cpp ファイルのビルド
サポートされるコンパイラのいずれかがインストールされている場合、mex
コマンドを使用して C++ MEX アプリケーション用のコンパイラをセットアップします。コンパイラを選択するオプションが提供される場合、インストールされている MATLAB C++ MEX がサポートするコンパイラを選択します。
mex -setup C++
MATLAB mex
コマンドを使用して、C++ MEX プログラムをビルドします。
mex MyMEXCode.cpp
MEX インクルード ファイル
C++ ソース コードに次のヘッダー ファイルをインクルードします。ヘッダー ファイルには、関数宣言と、API ライブラリでアクセスするルーチンのプロトタイプが含まれています。これらのファイルは
フォルダーに存在し、Windows®、Mac、および Linux® の各システムで共通です。C++ MEX ファイルは次のヘッダー ファイルを使用します。matlabroot
/extern/include
mex.hpp
— C++ MEX API の定義mexAdapter.hpp
— C++ MEX 関数の演算子によって必要とされるユーティリティ
メモ
複数のファイルにわたる MEX アプリケーションの MexFunction
定義では、mexAdapter.hpp
を 1 回だけインクルードしてください。
ファイル拡張子
MEX ファイルはプラットフォーム固有です。MATLAB は、次のプラットフォーム固有のファイル拡張子によって MEX ファイルを識別します。
MEX ファイルのプラットフォーム依存の拡張子
プラットフォーム | バイナリ MEX ファイルの拡張子 |
---|---|
Windows |
|
Linux |
|
Apple シリコン搭載の macOS |
|
Intel® 搭載の macOS |
|
メモ
Intel を搭載した macOS でビルドされた MEX ファイルは、Rosetta 2 を使用する Apple シリコン プラットフォームではサポートされていません。
参考
mex
| matlab::engine::MATLABEngine