メインコンテンツ

デプロイ オプションの選択

MATLAB® Compiler™ は、目的のビルド ターゲットに応じて、スタンドアロン デプロイや他のプログラミング言語との統合のために、MATLAB コードをソフトウェア コンポーネントにパッケージ化するためのオプションをいくつか提供します。コードは、コマンド ラインで、またはビルド ターゲットに関連付けられたコンパイラ アプリを使用してパッケージ化できます。

  • コンパイラ アプリでは、グラフィカル インターフェイスを使用して MATLAB コードをパッケージ化できる。

  • compiler.build 関数と compiler.package 関数では、簡略化されたインターフェイスを使用してコマンド ラインで MATLAB コードをパッケージ化できる。

  • mcc 関数では、コマンド ラインで MATLAB コードをパッケージ化でき、パッケージ化プロセスを制御するための、あまり一般的でない追加オプションも提供される。

コードのパッケージ化とデプロイに必要な手順の詳細については、MATLAB Compiler でのデプロイの手順を参照してください。

コンパイラ アプリ入門

コンパイラ アプリでグラフィカル ユーザー インターフェイスを使用してコードをパッケージ化します。これらのアプリは、パッケージ化オプションを指定するための簡略化されたインターフェイスを備えています。アプリは、MATLAB Runtime と共にアプリケーションをインストールするインストーラーを生成します。

MATLAB Compiler では、次のコンパイラ アプリを使用できます。

MATLAB Compiler SDK™ では、次のアプリを使用することもできます。

コンパイラ アプリには次のような利点があります。

  • 単一の直感的なインターフェイスを使用して、関連するデプロイ タスクを実行する。

  • 関連する情報を便利なプロジェクトファイルに保存する。

  • プロジェクトの状態がセッション間で維持される。

  • 事前に設定されたメニューから、以前保存したコンパイラ プロジェクトを読み込む。

  • アプリケーションを配布用にパッケージ化するためのインストーラーが自動的に生成される。

  • ビルド設定を MATLAB デプロイ スクリプトとしてエクスポートする。

compiler.build コマンド ライン関数を使用したコンパイル

compiler.build の関数群は、MATLAB コードをパッケージ化するための最新のコマンド ライン インターフェイスを提供します。各関数は特定のビルド ターゲットに関連付けられており、名前と値の引数を使用してパッケージ化プロセスをカスタマイズできます。

compiler.build 関数では、アプリケーション インストーラーは生成されません。compiler.build 関数を使用して作成されたアプリケーションのインストーラーを作成するには、compiler.package.installer を参照してください。

いくつかの compiler.build 関数を利用できます。

MATLAB Compiler SDK では、次の関数を使用することもできます。

compiler.build には次のような利点があります。

  • インストーラーが不要の場合、コンパイラ アプリ ワークフローを使用するよりも compiler.build を実行する方が高速となる。

  • これらの関数は、他の MATLAB 関数と同様の使い慣れたコマンド ライン インターフェイスを備えている。

  • デプロイ スクリプトまたは compiler.build.<Target>Options オブジェクトを使用してバッチ デプロイ タスクを実行する。

  • インストーラーの作成などの後処理タスクに、compiler.build.Results 出力を使用する。

  • パッケージ化オプションは、フラグではなく記述名が付けられている。

mcc を使用して追加のパッケージ化オプションを指定

mcc は、利用可能な任意のビルド ターゲットへのデプロイ用に MATLAB コードをコンパイルできる MATLAB 関数です。

mcc には、出力とパッケージ化の方法を制御できる多数のオプション フラグがあります。たとえば、-R オプションを使用して、MATLAB Runtime の実行時オプションを指定できます。パッケージ化プロセスを細かく制御する必要がある場合は、mcc を使用してください。

mcc では、アプリケーション インストーラーは生成されません。mcc を使用して作成されたアプリケーションのインストーラーを作成するには、compiler.package.installer を参照してください。

mcc には次のような利点があります。

  • 他のパッケージ化方法では使用できない高度なコンパイラ オプションを指定する。

  • mcc を MATLAB コマンド ウィンドウまたはシステム コマンド プロンプトで実行する。

  • Spark™ アプリケーション ターゲットは、mcc でのみ使用できる。

制限

compiler.build の制限

  • これらの関数は、mcc で利用できるパッケージ化オプションのほとんどを提供するが、すべてではない。

    メモ

    Verbose オプションを true に設定して compiler.build 関数を呼び出すと、アーティファクトのコンパイルに使用された mcc コマンドが出力に表示される。追加の mcc ビルド オプションを指定するには、このコマンドにそれらのオプションを追加して再コンパイルする。

  • compiler.build 関数を使用して Spark アプリケーションは作成できない。Spark アプリケーションを作成するには、mcc を使用する。

  • compiler.build 関数を使用して Hadoop® ジョブは作成できない。Hadoop アプリケーションを作成するには、mcc を使用する。

コンパイラ アプリの制限

  • コンパイラ アプリは、mcc で利用できるパッケージ化オプションのほとんどを提供するが、すべてではない。

    R2025a より前: 追加のカスタマイズのために、Web アプリ コンパイラを除く任意のコンパイラ アプリの [アプリケーションの実行に必要なファイル] セクションを使用して、mcc オプション フラグを指定できる。

  • コンパイラ アプリを使用して、MATLAB Production Server 用の Excel アドインは作成できない。MATLAB Production Server 用の Excel アドインを作成するには、compiler.build.excelClientForProductionServer 関数を使用する。

  • コンパイラ アプリを使用して、Docker イメージやマイクロサービス イメージは作成できない。Docker イメージを作成するには、compiler.package.docker または compiler.package.microserviceDockerImage 関数を使用する。

  • コンパイラ アプリを使用して Spark アプリケーションは作成できない。Spark アプリケーションを作成するには、mcc 関数を使用する。

  • コンパイラ アプリを使用して Spark アプリケーションは作成できない。Spark アプリケーションを作成するには、mcc 関数を使用する。

  • コンパイラ プロジェクトが、MATLAB のリリース間で互換性がない場合がある。R2025a より前のリリースで作成されたデプロイ プロジェクトを開くと、MATLAB はそれらのプロジェクトを MATLAB プロジェクトに自動的にアップグレードする。詳細については、Target-Specific Compiler Apps for MATLAB Code Deploymentを参照してください。

mcc の制限

  • mcc を使用して Web アプリは作成できない。Web アプリ コンパイラ アプリまたは compiler.build.webAppArchive 関数を使用して Web アプリを作成する。

  • mcc を使用して、スタンドアロン Docker イメージは作成できない。スタンドアロン Docker イメージを作成するには、compiler.package.docker 関数を使用する。

  • mcc を使用して、マイクロサービス Docker イメージは作成できない。マイクロサービス Docker イメージを作成するには、compiler.package.microserviceDockerImage 関数を使用する。

参考

| |

トピック