必要な API ライブラリへのカスタム リンク
MathWorks® では、mex コマンドを使用して MEX ファイルとエンジン アプリケーションをビルドするよう推奨しています。このビルド スクリプトは、アプリケーションで使用される MATLAB® API で必要なライブラリに自動的にリンクします。
mex コマンドではなく統合開発環境 (IDE) を使用してこれらのアプリケーションをカスタム ビルドするには、以下に挙げる必要なランタイム ライブラリとインクルード ファイルのリストを参照してください。パス名を特定するには、これらの MATLAB コマンドを使用します。
matlabrootを、matlabrootで返される値に置き換える。compilerを"microsoft"または"mingw64"に置き換える。インクルード ファイルへのパスは以下によって返される値になる。
fullfile(matlabroot,"extern","include")
C++ MEX 関数
C++ MEX 関数をビルドするには、C++ MEX APIおよびC++ 用の MATLAB データ APIを使用します。
インクルード ファイル:
mex.hpp— C++ MEX API の定義mexAdapter.hpp— C++ MEX 関数の演算子によって必要とされるユーティリティ
Windows® ライブラリ:
fullfile(matlabroot,"extern","lib","win64",compiler,"libMatlabDataArray.lib")
Linux® ライブラリ:
fullfile(matlabroot,"extern","bin","glnxa64","libMatlabDataArray.so")
macOS ライブラリ:
fullfile(matlabroot,"extern","bin","maca64","libMatlabDataArray.dylib")
C++ エンジン アプリケーション
C++ エンジン アプリケーションをビルドするには、C++ からの MATLAB の呼び出しおよびC++ 用の MATLAB データ APIを使用します。
インクルード ファイル:
MatlabEngine.hpp— C++ 用の MATLAB エンジン API の定義MatlabDataArray.hpp— C++ と MATLAB データとの間の汎用インターフェイスの定義
Windows ライブラリ:
エンジン ライブラリ —
fullfile(matlabroot,"extern","lib","win64",compiler,"libMatlabEngine.lib")MATLAB データ ライブラリ —
fullfile(matlabroot,"extern","lib","win64",compiler,"libMatlabDataArray.lib")
Linux ライブラリ:
エンジン ライブラリ —
fullfile(matlabroot,"extern","bin","glnxa64","libMatlabEngine.so")MATLAB データ ライブラリ —
fullfile(matlabroot,"bin","glnxa64","libMatlabDataArray.so")
macOS ライブラリ:
エンジン ライブラリ —
fullfile(matlabroot,"extern","bin","maca64","libMatlabEngine.dylib")MATLAB データ ライブラリ —
fullfile(matlabroot,"extern","bin","maca64","libMatlabDataArray.dylib")
C MEX 関数
C MEX 関数をビルドするには、C 行列 APIと、MATLAB (MEX ファイル) から呼び出せる C 関数の記述にリストされている C MEX API 関数を使用します。オプションとして、MEX 関数で MAT ファイルに対する読み取りまたは書き込みを行うには、MAT ファイル データを読み取る C プログラムの作成を使用します。
インクルード ファイル:
mex.h— エントリ ポイントとインターフェイス ルーチンを宣言matrix.h—mxArray構造体の定義および行列アクセス ルーチンの関数プロトタイプmat(オプション) —mat.hルーチンの関数プロトタイプ
Windows ライブラリ:
fullfile(matlabroot"extern","lib","win64",compiler,"libmex.lib")fullfile(matlabroot"extern","lib","win64",compiler,"libmx.lib")fullfile(matlabroot"extern","lib","win64",compiler,"libmat.lib")(オプション)
Linux ライブラリ:
fullfile(matlabroot","bin","glnxa64","libmex.so)fullfile(matlabroot","bin","glnxa64","libmx.so)fullfile(matlabroot","bin","glnxa64","libmat.so)(オプション)
macOS ライブラリ:
fullfile(matlabroot","bin","maca64","libmex.dylib)fullfile(matlabroot","bin","maca64","libmx.dylib)fullfile(matlabroot","bin","maca64","libmat.dylib)(オプション)
Fortran MEX 関数
Fortran MEX 関数をビルドするには、Fortran 行列 APIと、MATLAB (MEX ファイル) から呼び出せる Fortran 関数の記述にリストされている Fortran MEX API 関数を使用します。オプションとして、MEX 関数で MAT ファイルに対する読み取りまたは書き込みを行うには、MAT ファイル データを読み取る Fortran プログラムの作成を使用します。
インクルード ファイル:
mex.h— エントリ ポイントとインターフェイス ルーチンを宣言matrix.h—mxArray構造体の定義および行列アクセス ルーチンの関数プロトタイプmat(オプション) —mat.hルーチンの関数プロトタイプ
Windows ライブラリ:
fullfile(matlabroot,"extern","lib","win64",compiler,"libmex.lib")fullfile(matlabroot,"extern","lib","win64",compiler,"libmx.lib")fullfile(matlabroot,"extern","lib","win64",compiler,"libmat.lib")(オプション)
Linux ライブラリ:
fullfile(matlabroot,"bin","glnxa64","libmex.so")fullfile(matlabroot,"bin","glnxa64","libmx.so")fullfile(matlabroot,"bin","glnxa64","libmat.so")(オプション)
macOS ライブラリ:
fullfile(matlabroot,"bin","maca64","libmex.dylib")fullfile(matlabroot,"bin","maca64","libmx.dylib")fullfile(matlabroot,"bin","maca64","libmat.dylib")(オプション)
C エンジン アプリケーション
C エンジン アプリケーションをビルドするには、C 行列 APIおよびC からの MATLAB の呼び出しを使用します。アプリケーションに mexPrintf のような C MEX API 関数を含める場合は、libmex ライブラリにリンクしなければなりません。関数の一覧は、MATLAB (MEX ファイル) から呼び出せる C 関数の記述を参照してください。オプションで、MAT ファイルの読み取りまたは書き込みをアプリケーションで行うには、MAT ファイル データを読み取る C プログラムの作成を使用します。
インクルード ファイル:
engine.h— エンジン ルーチンの関数プロトタイプ。matrix.h—mxArray構造体の定義および行列アクセス ルーチンの関数プロトタイプ。mat.h(オプション) — MAT ファイル (mat) ルーチンの関数プロトタイプ。
Windows ライブラリ:
エンジン ライブラリ —
fullfile(matlabroot,"lib","win64",compiler,"libeng.lib")行列ライブラリ —
fullfile(matlabroot,"lib","win64",compiler,"libmx.lib")MEX ライブラリ (オプション) —
fullfile(matlabroot,"lib","win64",compiler,"libmex.lib")MAT ファイル ライブラリ (オプション) —
fullfile(matlabroot,"lib","win64",compiler,"libmat.lib")
Linux ライブラリ:
エンジン ライブラリ —
fullfile(matlabroot,"bin","glnxa64","libeng.so")行列ライブラリ —
fullfile(matlabroot,"bin","glnxa64","libmx.so")MEX ライブラリ (オプション) —
fullfile(matlabroot,"bin","glnxa64","libmex.so")MAT ファイル ライブラリ (オプション) —
fullfile(matlabroot,"bin","glnxa64","libmat.so")
macOS ライブラリ:
エンジン ライブラリ —
fullfile(matlabroot,"bin","maca64","libeng.dylib")行列ライブラリ —
fullfile(matlabroot,"bin","maca64","libmx.dylib")MEX ライブラリ (オプション) —
fullfile(matlabroot,"bin","maca64","libmex.dylib")MAT ファイル ライブラリ (オプション) —
fullfile(matlabroot,"bin","maca64","libmat.dylib")
Fortran エンジン アプリケーション
Fortran エンジン アプリケーションをビルドするには、Fortran 行列 APIおよびFortran からの MATLAB の呼び出しを使用します。アプリケーションに mexPrintf のような Fortran MEX API 関数を含める場合は、libmex ライブラリにリンクしなければなりません。関数の一覧は、MATLAB (MEX ファイル) から呼び出せる Fortran 関数の記述を参照してください。オプションで、MAT ファイルの読み取りまたは書き込みをアプリケーションで行うには、MAT ファイル データを読み取る Fortran プログラムの作成を使用します。
インクルード ファイル:
engine.h— エンジン ルーチンの関数プロトタイプ。matrix.h—mxArray構造体の定義および行列アクセス ルーチンの関数プロトタイプ。mat.h(オプション) — MAT ファイル (mat) ルーチンの関数プロトタイプ。
Windows ライブラリ:
エンジン ライブラリ —
fullfile(matlabroot,"lib","win64",compiler,"libeng.lib")行列ライブラリ —
fullfile(matlabroot,"lib","win64",compiler,"libmx.lib")MEX ライブラリ (オプション) —
fullfile(matlabroot,"lib","win64",compiler,"libmex.lib")MAT ファイル ライブラリ (オプション) —
fullfile(matlabroot,"lib","win64",compiler,"libmat.lib")
Linux ライブラリ:
エンジン ライブラリ —
fullfile(matlabroot,"bin","glnxa64","libeng.so")行列ライブラリ —
fullfile(matlabroot,"bin","glnxa64","libmx.so")MEX ライブラリ (オプション) —
fullfile(matlabroot,"bin","glnxa64","libmex.so")MAT ファイル ライブラリ (オプション) —
fullfile(matlabroot,"bin","glnxa64","libmat.so")
macOS ライブラリ:
エンジン ライブラリ —
fullfile(matlabroot,"bin","maca64","libeng.dylib")行列ライブラリ —
fullfile(matlabroot,"bin","maca64","libmx.dylib")MEX ライブラリ (オプション) —
fullfile(matlabroot,"bin","maca64","libmex.dylib")MAT ファイル ライブラリ (オプション) —
fullfile(matlabroot,"bin","maca64","libmat.dylib")
C MAT ファイル アプリケーション
C MAT ファイルからデータを読み取るスタンドアロン アプリケーションをビルドするには、C 行列 APIおよびMAT ファイル データを読み取る C プログラムの作成を使用します。アプリケーションに mexPrintf のような C MEX API 関数を含める場合は、libmex ライブラリにリンクしなければなりません。これらの関数の一覧は、MATLAB (MEX ファイル) から呼び出せる C 関数の記述を参照してください。
インクルード ファイル:
mat—mat.hルーチンの関数プロトタイプmatrix.h—mxArray構造体の定義および行列アクセス ルーチンの関数プロトタイプ
Windows ライブラリ:
MAT ファイル ライブラリ —
fullfile(matlabroot,"extern","lib","win64",compiler,"libmat.lib")行列ライブラリ —
fullfile(matlabroot,"extern","lib","win64",compiler,"libmx.lib")MEX ライブラリ (オプション) —
fullfile(matlabroot,"extern","lib","win64",compiler,"libmex.lib")
Linux ライブラリ:
MAT ファイル ライブラリ —
fullfile(matlabroot,"bin","glnxa64","libmat.so")行列ライブラリ —
fullfile(matlabroot,"bin","glnxa64","libmx.so")MEX ライブラリ (オプション) —
fullfile(matlabroot,"extern","bin","glnxa64","libmex.so")
macOS ライブラリ:
MAT ファイル ライブラリ —
fullfile(matlabroot","bin","maca64","libmat.dylib")行列ライブラリ —
fullfile(matlabroot","bin","maca64","libmx.dylib")MEX ライブラリ (オプション) —
fullfile(matlabroot,"extern","bin","maca64","libmex.dylib")
Fortran MAT ファイル アプリケーション
Fortran MAT ファイルからデータを読み取るスタンドアロン アプリケーションをビルドするには、Fortran 行列 APIおよびMAT ファイル データを読み取る Fortran プログラムの作成を使用します。アプリケーションに mexPrintf のような Fortran MEX API 関数を含める場合は、libmex ライブラリにリンクしなければなりません。これらの関数の一覧は、MATLAB (MEX ファイル) から呼び出せる Fortran 関数の記述を参照してください。
インクルード ファイル:
mat—mat.hルーチンの関数プロトタイプmatrix.h—mxArray構造体の定義および行列アクセス ルーチンの関数プロトタイプ
Windows ライブラリ:
MAT ファイル ライブラリ —
fullfile(matlabroot,"extern","lib","win64",compiler,"libmat.lib")行列ライブラリ —
fullfile(matlabroot,"extern","lib","win64",compiler,"libmx.lib")MEX ライブラリ (オプション) —
fullfile(matlabroot,"extern","lib","win64",compiler,"libmex.lib")
Linux ライブラリ:
MAT ファイル ライブラリ —
fullfile(matlabroot,"bin","glnxa64","libmat.so")行列ライブラリ —
fullfile(matlabroot,"bin","glnxa64","libmx.so")MEX ライブラリ (オプション) —
fullfile(matlabroot,"extern","bin","glnxa64","libmex.so")
macOS ライブラリ:
MAT ファイル ライブラリ —
fullfile(matlabroot","bin","maca64","libmat.dylib")行列ライブラリ —
fullfile(matlabroot","bin","maca64","libmx.dylib")MEX ライブラリ (オプション) —
fullfile(matlabroot,"extern","bin","maca64","libmex.dylib")