Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

Python パッケージの生成と Python アプリケーションのビルド

サポートされるプラットフォーム: Windows®、Linux®Mac

この例では、MATLAB® 関数を使用する Python® パッケージの作成方法を説明します。生成されたパッケージは、Python アプリケーションに統合できます。また、この例では、Python アプリケーションから Python パッケージを呼び出す方法も示します。MATLAB のライセンス コピーがターゲット システムにインストールされている必要はありません。

MATLAB での関数の作成

MATLAB で、パッケージ化する MATLAB コードを調べます。この例では、次のように関数 makesqr.m を記述します。

function y = makesqr(x)

y = magic(x);

MATLAB コマンド プロンプトで、makesqr(5) と入力します。

出力は以下のようになります。

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9

ライブラリ コンパイラ アプリを使用した Python アプリケーションの作成

  1. [MATLAB アプリ] タブで、[アプリ] セクションの右端にある矢印をクリックします。[アプリケーション配布] で、[ライブラリ コンパイラ] をクリックします。

    または、MATLAB コマンド プロンプトで以下を入力して、[ライブラリ コンパイラ] アプリを開きます。

    libraryCompiler

  2. ツールストリップの [タイプ] セクションで、[Python パッケージ] をクリックします。

    ライブラリ コンパイラ アプリのプロジェクト ウィンドウで、配布する MATLAB アプリケーションのファイルを指定します。

    1. ツールストリップの [エクスポートする関数] セクションで、 をクリックします。

    2. [ファイルの追加] ウィンドウで、サンプルのフォルダーを参照し、パッケージ化する関数を選択します。[開く] をクリックします。

    エクスポートする関数ファイルのリストに関数が追加されます。同じアプリケーションに複数のファイルをパッケージ化するには、この手順を繰り返します。

    この例では、先ほど記述した makesqr.m ファイルを選択します。

  3. ツールストリップの [パッケージ化オプション] セクションで次のオプションのいずれかを選択して、生成されるアプリケーションに MATLAB Runtime インストーラーを含めるかどうかを決定します。

    • ランタイムを Web からダウンロードMATLAB Runtime をダウンロードして配布された MATLAB アプリケーションと共にインストールするインストーラーを生成します。インストーラーのファイル名を指定できます。

    • ランタイムをパッケージに含めるMATLAB Runtime インストーラーを含むアプリケーションを生成します。インストーラーのファイル名を指定できます。

      メモ

      このオプションを初めて選択したときに、MATLAB Runtime インストーラーをダウンロードするように求めるメッセージが表示されます。

パッケージ設定の指定

  1. [ライブラリ名] フィールドに、パッケージの名前として makesqr が自動的に入力されます。この名前を MagicSquarePkg に変更します。Python パッケージの命名要件の詳細については、Import Compiled Python Packagesを参照してください。

  2. サンプル Python ドライバー ファイルを生成するための MATLAB ファイルを追加します。Python ドライバー ファイルはパッケージの作成に必須ではありませんが、MATLAB により生成された Python アプリケーションのインストールと実行の方法を示すために使用します。

    [サンプル] セクションで、[新規サンプルの作成] を選択して makesqr.m をクリックします。MATLAB ファイルが編集用に開きます。

    % Sample script to demonstrate execution of function y = makesqr(x)
    x = 0; % Initialize x here
    y = makesqr(x);
    x = 0x = 3 に変更し、ファイルを保存して、[ライブラリ コンパイラ] アプリに戻ります。詳細と制限については、サンプル ドライバー ファイルの作成を参照してください。

アプリケーションとその外観のカスタマイズ

次のように、インストーラーのカスタマイズ、アプリケーションのカスタマイズ、アプリケーションに関する情報の追加を実行できます。

  • ライブラリ情報 — 配布されるアプリケーションに関する情報。また、アプリケーション アイコンとスプラッシュ スクリーンを変更して、アプリケーションの外観をカスタマイズすることもできます。生成されるインストーラーはこの情報を使用して、インストールされるアプリケーションのメタデータを入力します。インストーラーのカスタマイズを参照してください。

  • 追加インストーラー オプション — 生成されるインストーラーの既定のインストール パスと、カスタム ロゴの選択。インストール パスの変更を参照してください。

  • ライブラリの実行に必要なファイル — 生成されるアプリケーションを実行するために必要な追加ファイル。これらのファイルは、生成されるアプリケーション インストーラーに含められます。コンパイラ プロジェクトの必須ファイルの管理を参照してください。

  • エンド ユーザー用にインストールされるファイル — アプリケーションと共にインストールされるファイル。

    アプリケーションと共にインストールするファイルの指定を参照してください。

アプリケーションのパッケージ化

  1. パッケージ化されたアプリケーションを生成するには、[パッケージ化] をクリックします。

    [プロジェクトを保存] ダイアログ ボックスで、プロジェクトを保存する場所を指定します。

  2. [パッケージ] ダイアログ ボックスで、[プロセスが完了したら出力フォルダーを開く] が選択されていることを確認します。

    パッケージ化プロセスが完了したら、生成された出力を調べます。

    • ターゲット フォルダーの場所に for_redistributionfor_redistribution_files_onlyfor_testing の 3 つのフォルダーが生成されます。

      これらのフォルダーに生成されるファイルの詳細については、MATLAB 関数のパッケージ化後に生成されるファイルを参照してください。

    • PackagingLog.txtMATLAB Compiler™ により生成されたログ ファイル。

compiler.build.pythonPackage を使用した Python パッケージの作成

メモ

ライブラリ コンパイラ アプリを使用して Python パッケージが既に作成されている場合は、この節を省略できます。一方、プログラムによる方法で MATLAB コマンド ウィンドウから Python パッケージを作成する方法を確認する場合は、以下の手順に従ってください。

  1. 以下のコードを makesqrSample1.m という名前のサンプル ファイルに保存します。

    x = 3;
    a = makesqr(x);

  2. 関数 compiler.build.pythonPackage と先ほど作成した makesqr.m ファイルを使用して、Python パッケージをビルドします。名前と値の引数を使用してサンプル ファイルを追加し、パッケージ名を指定します。

    buildResults = compiler.build.pythonPackage('makesqr.m',...
    'PackageName','MagicSquarePkg',...
    'SampleGenerationFiles','makesqrSample1.m');

    compiler.build.Results オブジェクト buildResults に、ビルド タイプ、生成されたファイル、ビルド オプションに関する情報が格納されます。

  3. この構文により、現在の作業ディレクトリの MagicSquarePkgpythonPackage という名前のフォルダー内に以下のファイルが生成されます。

    • samples\makesqrSample1.py — Python サンプル ドライバー ファイル。

    • GettingStarted.html — パッケージの統合に関する情報が含まれる HTML ファイル。

    • mccExcludedFiles.log — アプリケーションに含まれていないすべてのツールボックス関数のリストが含まれるログ ファイル。サポートされていない関数の詳細については、MATLAB Compiler の制限を参照してください。

    • readme.txt — パッケージ化およびインターフェイスの情報が含まれるテキスト ファイル。

    • requiredMCRProducts.txtMATLAB Runtime がアプリケーションを実行するために必要な製品の製品 ID が含まれるテキスト ファイル。

    • setup.py — パッケージをインストールする Python ファイル。

    • unresolvedSymbols.txt — 未解決のシンボルに関する情報が含まれるテキスト ファイル。

    メモ

    生成されたパッケージに MATLAB Runtime やインストーラーは含まれていません。

  4. compiler.build コマンドでは、以下の名前と値の引数を 1 つ以上使用することによって、追加オプションを指定できます。

    • 'AdditionalFiles' — パッケージに含める追加ファイルへのパス。

    • 'AutoDetectDataFiles' — データ ファイルを自動的に含めるためのフラグ。

    • 'OutputDir' — 生成されたファイルを含む出力ディレクトリへのパス。

    • 'PackageName' — 生成されたパッケージの名前。

    • 'SampleGenerationFiles' — サンプル Python パッケージ ファイルの生成に使用される MATLAB サンプル ファイル。詳細については、サンプル ドライバー ファイルの作成を参照してください。

    • 'Verbose' — ビルド プロセス中にコンパイラ出力を示す進行状況の情報を表示するためのフラグ。

MATLAB により生成された Python アプリケーションのインストールと実行

Python パッケージの作成後、Python アプリケーションからこれを呼び出すことができます。作成する Python アプリケーションでは、パッケージ化の際に生成されたサンプル Python ドライバー コードを使用します。この Python ドライバー コードは Python パッケージを呼び出し、以前のセットアップ手順で選択したサンプル MATLAB ファイルを基にしています。

これらの手順は、GettingStarted.html ファイルでも説明されています。開始する前に、MATLAB Runtime のインストールと構成が完了していて、Python がインストールされていることを確認してください。

  1. 生成された Python ドライバー コード ファイル makesqrSample1.pysamples フォルダーからコピーして、setup.py ファイルを含むフォルダーに貼り付けます。

  2. システムのコマンド ラインを使用して、生成されたサンプル Python ドライバー コード ファイルと setup.py を含むフォルダーに移動します。

  3. システムのコマンド プロンプトで python を使用して、アプリケーションをインストールします。

    python setup.py install
  4. システムのコマンド プロンプトからアプリケーションを実行します。

    python makesqrSample1.py

    メモ

    macOS では、mwpython スクリプトを使用しなければなりません。mwpython スクリプトは matlabroot/bin フォルダーにあります。matlabroot は MATLAB がインストールされている場所です。

    たとえば、mwpython makesqrSample1.py などです。

参考

| | | |