メインコンテンツ

必要な 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.hmxArray 構造体の定義および行列アクセス ルーチンの関数プロトタイプ

  • 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.hmxArray 構造体の定義および行列アクセス ルーチンの関数プロトタイプ

  • 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.hmxArray 構造体の定義および行列アクセス ルーチンの関数プロトタイプ。

  • 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.hmxArray 構造体の定義および行列アクセス ルーチンの関数プロトタイプ。

  • 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 関数の記述を参照してください。

インクルード ファイル:

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

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

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 関数の記述を参照してください。

インクルード ファイル:

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

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

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")

参考

トピック