Main Content

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 ライブラリでアクセスするルーチンのプロトタイプが含まれています。これらのファイルは matlabroot/extern/include フォルダーに存在し、Windows®Mac、および Linux® の各システムで共通です。C++ MEX ファイルは次のヘッダー ファイルを使用します。

  • mex.hpp — C++ MEX API の定義

  • mexAdapter.hpp — C++ MEX 関数の演算子によって必要とされるユーティリティ

メモ

複数のファイルにわたる MEX アプリケーションの MexFunction 定義では、mexAdapter.hpp を 1 回だけインクルードしてください。

ファイル拡張子

MEX ファイルはプラットフォーム固有です。MATLAB は、次のプラットフォーム固有のファイル拡張子によって MEX ファイルを識別します。

MEX ファイルのプラットフォーム依存の拡張子

プラットフォームバイナリ MEX ファイルの拡張子

Windows

mexw64

Linux

mexa64

Apple シリコン搭載の macOS

mexmaca64

Intel® 搭載の macOS

mexmaci64

メモ

Intel を搭載した macOS でビルドされた MEX ファイルは、Rosetta 2 を使用する Apple シリコン プラットフォームではサポートされていません。

参考

|

関連するトピック