Main Content

必要な API ライブラリへのカスタム リンク

MathWorks® では、mex コマンドを使用して MEX ファイルとエンジン アプリケーションをビルドするよう推奨しています。このビルド スクリプトは、アプリケーションで使用される MATLAB® API で必要なライブラリに自動的にリンクします。

mex コマンドではなく統合開発環境 (IDE) を使用してこれらのアプリケーションをカスタム ビルドするには、以下に挙げる必要なランタイム ライブラリとインクルード ファイルのリストを参照してください。パス名を特定するには、これらの MATLAB コマンドを使用します。

  • matlabroot を、matlabroot で返される値に置き換える。

  • compilermicrosoft または mingw64 に置き換える。

  • macos は、maca64 (Apple シリコン搭載の macOS の場合) または maci64 (Intel® 搭載の macOS の場合) に置き換えます。

  • インクルード ファイルへのパスは以下によって返される値になる。

    fullfile(matlabroot,'extern','include')

C++ MEX 関数

C++ MEX 関数をビルドするには、C++ MEX APIおよびC++ 用の MATLAB データ APIを使用します。

インクルード ファイル:

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

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

Windows® ライブラリ:

  • matlabroot\extern\lib\win64\compiler\libMatlabDataArray.lib

Linux® ライブラリ:

  • Linux—matlabroot/extern/bin/glnxa64/libMatlabDataArray.so

macOS ライブラリ:

  • macOSmatlabroot/extern/bin/macos/libMatlabDataArray.dylib

C++ エンジン アプリケーション

C++ エンジン アプリケーションをビルドするには、C++ からの MATLAB の呼び出しおよびC++ 用の MATLAB データ APIを使用します。

インクルード ファイル:

  • MatlabEngine.hpp — C++ エンジン API の定義

  • MatlabDataArray.hpp — C++ と MATLAB データとの間の汎用インターフェイスの定義

Windows ライブラリ:

  • エンジン ライブラリ — matlabroot\extern\lib\win64\compiler\libMatlabEngine.lib

  • MATLAB データ配列ライブラリ — matlabroot\extern\lib\win64\compiler\libMatlabDataArray.lib

Linux ライブラリ:

  • エンジン ライブラリ — matlabroot/extern/bin/glnxa64/libMatlabEngine.so

  • MATLAB データ配列ライブラリ — matlabroot/extern/bin/glnxa64/libMatlabDataArray.so

macOS ライブラリ:

  • エンジン ライブラリ — matlabroot/extern/bin/macos/libMatlabEngine.dylib

  • MATLAB データ配列ライブラリ — matlabroot/extern/bin/macos/libMatlabDataArray.dylib

C MEX 関数

C MEX 関数をビルドするには、C 行列 APIと、MATLAB (MEX ファイル) から呼び出せる C 関数の記述にリストされている C MEX API 関数を使用します。オプションとして、MEX 関数で MAT ファイルに対する読み取りまたは書き込みを行うには、MAT ファイル データを読み取る C プログラムの作成を使用します。

インクルード ファイル:

  • mex.h — エントリ ポイントとインターフェイス ルーチンを宣言

  • matrix.hmxArray 構造体の定義および行列アクセス ルーチンの関数プロトタイプ

  • mat (オプション) — mat.h ルーチンの関数プロトタイプ

Windows ライブラリ:

  • matlabroot\extern\lib\win64\compiler\libmex.lib

  • matlabroot\extern\lib\win64\compiler\libmx.lib

  • matlabroot\extern\lib\win64\compiler\libmat.lib (オプション)

Linux ライブラリ:

  • matlabroot/bin/glnxa64/libmex.so

  • matlabroot/bin/glnxa64/libmx.so

  • matlabroot/bin/glnxa64/libmat.so (オプション)

macOS ライブラリ:

  • matlabroot/bin/macos/libmex.dylib

  • matlabroot/bin/macos/libmx.dylib

  • matlabroot/bin/macos/libmat.dylib (オプション)

C エンジン アプリケーション

C エンジン アプリケーションをビルドするには、C 行列 APIおよびC からの MATLAB の呼び出しを使用します。アプリケーションに mexPrintf のような C MEX API 関数を含める場合は、libmex ライブラリにリンクしなければなりません。関数の一覧は、MATLAB (MEX ファイル) から呼び出せる C 関数の記述を参照してください。オプションで、MAT ファイルの読み取りまたは書き込みをアプリケーションで行うには、MAT ファイル データを読み取る C プログラムの作成を使用します。

インクルード ファイル:

  • engine.h — エンジン ルーチンの関数プロトタイプ

  • matrix.hmxArray 構造体の定義および行列アクセス ルーチンの関数プロトタイプ

  • mat (オプション) — mat.h ルーチンの関数プロトタイプ

Windows ライブラリ:

  • エンジン ライブラリ — matlabroot\extern\lib\win64\compiler\libeng.lib

  • 行列ライブラリ — matlabroot\extern\lib\win64\compiler\libmx.lib

  • MEX ライブラリ (オプション) — matlabroot\extern\lib\win64\compiler\libmex.lib

  • MAT ファイル ライブラリ (オプション) — matlabroot\extern\lib\win64\compiler\libmat.lib

Linux ライブラリ:

  • エンジン ライブラリ — matlabroot/bin/glnxa64/libeng.so

  • 行列ライブラリ — matlabroot/bin/glnxa64/libmx.so

  • MEX ライブラリ (オプション) — matlabroot/bin/glnxa64/libmex.so

  • MAT ファイル ライブラリ (オプション) — matlabroot/bin/glnxa64/libmat.so

macOS ライブラリ:

  • エンジン ライブラリ — matlabroot/bin/macos/libeng.dylib

  • 行列ライブラリ — matlabroot/bin/macos/libmx.dylib

  • MEX ライブラリ (オプション) — matlabroot/bin/macos/libmex.dylib

  • MAT ファイル ライブラリ (オプション) — matlabroot/bin/macos/libmat.dylib

C MAT ファイル アプリケーション

C MAT ファイルからデータを読み取るスタンドアロン アプリケーションをビルドするには、C 行列 APIおよびMAT ファイル データを読み取る C プログラムの作成を使用します。アプリケーションに mexPrintf のような C MEX API 関数を含める場合は、libmex ライブラリにリンクしなければなりません。これらの関数の一覧は、MATLAB (MEX ファイル) から呼び出せる C 関数の記述を参照してください。

インクルード ファイル:

  • matmat.h ルーチンの関数プロトタイプ

  • matrix.hmxArray 構造体の定義および行列アクセス ルーチンの関数プロトタイプ

Windows ライブラリ:

  • MAT ファイル ライブラリ — matlabroot\extern\lib\win64\compiler\libmat.lib

  • 行列ライブラリ — matlabroot\extern\lib\win64\compiler\libmx.lib

  • MEX ライブラリ (オプション) — matlabroot\extern\lib\win64\compiler\libmex.lib

Linux ライブラリ:

  • MAT ファイル ライブラリ — matlabroot/bin/glnxa64/libmat.so

  • 行列ライブラリ — matlabroot/bin/glnxa64/libmx.so

  • MEX ライブラリ (オプション) — matlabroot/extern/bin/glnxa64/libmex.so

macOS ライブラリ:

  • MAT ファイル ライブラリ — matlabroot/bin/macos/libmat.dylib

  • 行列ライブラリ — matlabroot/bin/macos/libmx.dylib

  • MEX ライブラリ (オプション) — matlabroot/extern/bin/macos/libmex.dylib

参考

関連するトピック