Main Content

アプリケーションのカスタマイズ

アプリケーションをカスタマイズする方法は複数あります。具体的には、[アプリケーション コンパイラ] アプリまたは [ライブラリ コンパイラ] アプリを使用して、インストーラーのカスタマイズ、プロジェクトのファイルの管理、カスタム インストーラー パスの追加を行います。

インストーラーのカスタマイズ

アプリケーション アイコンの変更

既定のアイコンを変更するには、[ライブラリ名] または [アプリケーション名] フィールドの左にあるグラフィックスをクリックして、アイコンのプレビューを表示します。

[アイコンの選択] をクリックして、アプリケーション アイコンとして使用するグラフィックス ファイルを指定します。[マスクの使用] オプションを選択すると、アイコンの周囲の空白が白で塗りつぶされます。また、[境界線の使用] オプションを選択すると、アイコンの周囲に境界線が追加されます。

メイン ウィンドウに戻るには、[保存して使用] をクリックします。

ライブラリまたはアプリケーション情報の追加

アプリケーションに関する以下の追加情報を入力できます。

  • ライブラリ/アプリケーション名: インストールする MATLAB® アーティファクトの名前。たとえば、この名前を foo にすると、インストールされる実行可能ファイルは foo.exe となり、Windows® スタート メニューの項目は [foo] となります。アプリケーション用に作成されるフォルダーは InstallRoot/foo になります。

    既定値は、アプリの [メイン ファイル] フィールドでリストの先頭に表示される関数の名前です。

  • バージョン: 既定値は 1.0 です。

  • 作成者名: 開発者の名前。

  • サポート用の電子メール アドレス: 連絡先情報に使用する電子メール アドレス。

  • 会社名: インストールする MATLAB アーティファクトの絶対インストール パス。たとえば、会社名が bar である場合、絶対インストール パスは InstallRoot/bar/ApplicationName となります。

  • 概要: アプリケーションの内容を示す簡単な概要。

  • 説明: アプリケーションの詳細な説明。

情報はすべて任意指定であり、別途指定されている場合を除き、インストーラーの最初のページにのみ表示されます。Windows システムでは、これらの情報は Windows コントロール パネルの [プログラムの追加と削除] にも表示されます。

スプラッシュ スクリーンの変更

インストーラーのスプラッシュ スクリーンはインストーラーの起動後に表示されます。これはインストーラーの初期化中にステータス バーと共に表示されます。

既定のイメージは、[カスタム スプラッシュ スクリーンの選択] をクリックして変更できます。ファイル エクスプローラーが開いたら、新しいイメージを見つけて選択してください。

カスタム イメージを既定のスプラッシュ スクリーンにドラッグ アンド ドロップできます。

インストール パスの変更

次の表は、パッケージ化されたバイナリをターゲット システムにインストールする場合にインストーラーが使用する既定のパスを示しています。

Windows C:\Program Files\companyName\appName
Mac OS X /Applications/companyName/appName
Linux® /usr/companyName/appName

既定のインストール パスは、[追加インストーラー オプション] の下の [既定のインストール フォルダー] フィールドを編集して変更できます。

ルート フォルダーに付加されるパスを指定するテキスト フィールドがインストール フォルダーです。アプリケーションのインストール フォルダーにルート フォルダーを選択することができます。次の表は、プラットフォームごとのオプションのカスタム ルート フォルダーを示しています。

Windows C:\Users\userName\AppData
Linux /usr/local

ロゴの変更

ロゴはインストーラーの起動後に表示されます。インストーラーの右側に表示されます。

既定のイメージは、[追加インストーラー オプション][カスタム ロゴの選択] をクリックして変更できます。ファイル エクスプローラーが開いたら、新しいイメージを見つけて選択してください。カスタム イメージを既定のロゴにドラッグ アンド ドロップできます。

インストール メモの編集

インストール メモは、パッケージ化されたファイルがインストーラーによってターゲット システムに正常にインストールされると表示されます。インストールされたバイナリを使用するために必要な追加セットアップについての役立つ情報や、アプリケーションの実行方法に関する説明を提供できます。

コンパイラ プロジェクトの必須ファイルの管理

コンパイラでは、依存関係解析関数を使用して、アプリケーションをパッケージ化し実行するために必要な追加の MATLAB ファイルが自動的に判定されます。こうしたファイルは自動的にパッケージ化され、生成されるバイナリに組み込まれます。コンパイラでは、必要なファイルで定義される関数への直接アクセスを可能にするラッパー コードは生成されません。

いずれかのコンパイラ アプリを使用する場合は、依存関係解析関数によって検出された必要なファイルが [アプリケーションの実行に必要なファイル] または [ライブラリの実行に必要なファイル] フィールドに一覧表示されます。

ファイルを追加するには、フィールドの [+] ボタンをクリックして、ファイルをエクスプローラーで選択します。ファイルを削除するには、ファイルを選択して Delete キーを押します。

注意

必要なファイルのリストからファイルを削除すると、アプリケーションがパッケージ化されなくなったり、配布されたときに正しく実行されなくなったりすることがあります。

mcc の使用方法

mcc を使用して MATLAB コードをパッケージ化する場合、必要なファイルのリストが実行前にコンパイラで表示されることはありません。その代わりに、依存関係解析関数によって検出された必要なファイル全部がパッケージ化されて、生成されるバイナリ ファイルに追加されます。

ファイルをリストに追加するには、1 つ以上の -a 引数を mcc に渡します。-a 引数は、指定されたファイルをファイルのリストに加え、生成されるバイナリに追加されるようにします。たとえば、-a hello.m はファイル hello.m を必要なファイルのリストに追加し、-a ./foofoo とそのサブフォルダー内のすべてのファイルを必要なファイルのリストに追加します。

サンプル ドライバー ファイルの作成

次のターゲット タイプでは、MATLAB Compiler SDK™ でのサンプル ドライバー ファイルの作成をサポートします。

  • C++ 共有ライブラリ

  • Java® パッケージ

  • .NET アセンブリ

  • Python® パッケージ

[ライブラリ コンパイラ] のサンプル ドライバー ファイル作成機能では、MATLAB コードを使用して、サンプル ドライバー ファイルをターゲット言語で生成します。サンプル ドライバー ファイルを使用して、生成された共有ライブラリをターゲット言語のアプリケーションに実装します。アプリで、[新規サンプルの作成] をクリックして新規 MATLAB スクリプトを自動的に生成するか、[既存のサンプルの追加] をクリックして、既に記述した MATLAB スクリプトをアップロードします。関数のパッケージ化が完了したら、ターゲット言語でのサンプル ドライバー ファイルが MATLAB スクリプトから生成され、for_redistribution_files_only\samples に保存されます。また、サンプル ドライバー ファイルは、for_redistribution のインストーラーにも含まれています。

新規 MATLAB ファイルを自動的に生成するには、[新規サンプルの作成] をクリックします。これにより、MATLAB ファイルが編集用に開きます。サンプル ファイルを開始点として利用し、エクスポートする関数の動作に基づいて、必要に応じてユーザーが編集できます。サンプル MATLAB ファイルは次のガイドラインに従わなければなりません。

  • サンプル ファイル コードでは、エクスポートする関数のみを使用しなければならない。

  • エクスポートする関数への呼び出しは、それぞれ別々のサンプル ファイル内になければならない。

  • エクスポートする同じ関数への呼び出しは、それぞれ別々のサンプル ファイルでなければならない。

  • エクスポートする関数の出力は、n 次元の数値、char、logical、struct、cell 配列のいずれかでなければならない。

  • データはローカル変数として保存してから、エクスポートする関数にサンプル ファイル コード内で渡さなければならない。

  • サンプル ファイル コードでユーザーの操作を必要としてはならない。

ターゲット言語固有の追加の考慮事項は次のとおりです。

  • C++ mwArray API — vararginvarargout はサポートされません。

  • .NET — タイプセーフ API はサポートされていません。

  • Python — cell 配列と char 配列はサイズが 1 行 N 列でなければならず、struct 配列はスカラーでなければなりません。数値配列や logical 配列は、MATLAB の場合と同様に方形配列でなければなりませんが、それ以外の制限はありません。

既に記述した MATLAB ファイルをアップロードするには、[既存のサンプルの追加] をクリックします。MATLAB コードは、エクスポートされた関数の実行方法を示さなければなりません。必要な MATLAB コードは、わずか数行の場合もあります。

input1 = [1 4 7; 2 5 8; 3 6 9];
input2 = [1 4 7; 2 5 8; 3 6 9];
addoutput = addmatrix(input1,input2);
また、このコードは、[新規サンプルの作成] オプションについて概説したものとまったく同じガイドラインに従わなければなりません。

パッケージ化手順で、サンプル ドライバー ファイルをまったく含めないように選択することもできます。ターゲット言語での独自のドライバー コードを作成した場合、MATLAB 関数のパッケージ化が完了してから、後で適切なディレクトリにコピーして貼り付けることができます。

アプリケーションと共にインストールするファイルの指定

コンパイラでは、生成されるファイルと共にインストールするファイルがパッケージ化されます。既定の設定では、MATLAB Runtime のインストールと構成に関する説明を含む Readme ファイルがインストーラーに組み込まれます。

こうしたファイルは、アプリの [エンド ユーザー用にインストールされるファイル] セクションに表示されます。

ファイルをリストに追加するには、 をクリックして、ファイルをエクスプローラーから選択します。

javaaddpath を呼び出した場合と同様に、JAR ファイルがアプリケーション クラス パスに追加されます。

注意

バイナリ ターゲットをリストから削除すると、意図した機能がインストーラーによってインストールされなくなります。

[エンド ユーザー用にインストールされるファイル] に表示されているファイルは、ターゲット コンピューターにインストールされる際、application フォルダーに保存されます。

ランタイム追加設定

パッケージ化されたアプリケーションの種類説明ランタイム追加設定オプション
汎用 COM コンポーネント
  • コンポーネントを現在のユーザーに対して登録します (管理者以外のユーザーに推奨) — このオプションは現在のユーザー アカウント用にコンポーネントの登録を有効にします。これは、管理者権限のないユーザー向けに提供されています。

.NET アセンブリ
  • 共有アセンブリの作成 — 複数の .NET アセンブリで MATLAB Runtime インストーラー インスタンスを共有できるようにします。

  • .NET リモートを有効にする — 分散システムの一部として、MATLAB 機能にリモートでアクセスできるようにします。詳細については、Create Remotable .NET Assemblyを参照してください。

  • タイプ セーフ API の有効化 — パッケージ化された .NET アセンブリのタイプ セーフな API を有効にします。

C++ 共有ライブラリの API の選択

  • すべてのインターフェイスを作成mwArray API と MATLAB データ API の両方を使用して、共有ライブラリのインターフェイスを作成します。

  • mwArray API を使用するインターフェイスの作成mwArray API を使用して、共有ライブラリのインターフェイスを作成します。このインターフェイスは C スタイル関数を使用して、MATLAB Runtime の初期化、コンパイルされた MATLAB 関数の MATLAB Runtime への読み込み、C++ コードと MATLAB Runtime の間で渡されるデータの管理を行います。このインターフェイスでは C++03 の機能のみがサポートされます。例については、C++ mwArray API 共有ライブラリの生成と C++ アプリケーションのビルドを参照してください。

  • MATLAB データ API を使用するインターフェイスの作成 — MATLAB データ API を使用して共有ライブラリのインターフェイスを作成します。最新の C++ セマンティクスをもつ汎用インターフェイスが使用されています。このインターフェイスでは C++11 の機能がサポートされます。詳細については、C++ MATLAB データ API 共有ライブラリの生成と C++ アプリケーションのビルドを参照してください。

参考

関連するトピック