このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
別の開発環境にコードを移動する場合
モデルの静的コードファイルと生成コードファイルを別の開発環境に移動する必要がある場合は,打包滚蛋ユーティリティを使用します。この状況は,システムまたは統合開発環境(IDE)にMATLAB®製品および仿金宝app真软件®製品が含まれていない場合に発生します。
コード再配置
pack-n-goユーティリティは,コード生成後のビルドプロセスをツールを使ってカスタマイズし,関数packNGo
を使って実行可能イメージのビルドに必要なファイルを見つけてパッケージ化します。ファイルは圧縮ファイルとしてパッケージ化され,移動先では標準邮政编码
ユーティリティを使って解凍することができます。
ユーザーインターフェイスを使用したコードのパッケージ化
ユーザーインターフェイスを使用してモデルのコードをパッケージ化し,移動するには,次の手順に従います。
[コンフィギュレーションパラメーター]ダイアログボックスで,[コードとアーティファクトのパッケージ化)を選択します。このオプションは,コード生成後に生成コードとアーティファクトを移動するためにパッケージ化する関数
packNGo
を実行するようにビルドプロセスを構成します。(Zipファイル名)フィールドに,生成コードやアーティファクトを移動するためにパッケージ化する
邮政编码
ファイルの名前を入力します。ファイル名は. zip
拡張子をつけてもつけなくても指定できます。拡張子を指定しないか,. zip
以外の拡張子を指定した場合,邮政编码
ユーティリティが拡張子. zip
を付加します。値を指定しない場合,ビルドプロセスは
という名前を使用します。ここで,模型
. zip
はコードが生成される最上位モデルの名前を示します。模型
変更を適用し,モデルのコードを生成します。移動可能であることを確認するために,生成された
邮政编码
ファイルを検査します。使用している邮政编码
ツールによっては,パッケージを解凍せずにファイルを開いて検査できることがあります。邮政编码
ファイルを移動先の開発環境に移動してファイルを解凍します。
コマンドラインユーザーインターフェイスを使用したコードのパッケージ化
コマンドラインユーザーインターフェイスを使用してモデルのコードをパッケージ化し,移動するには,次の手順に従います。
zipファイルの構造の選択
モデルビルド用のファイルを生成してパッケージ化する前に,ファイルをサブフォルダーのない,あるいは階層的なフォルダーに入れてパッケージ化するかどうかを決定します。既定の設定では,関数packNGo
はファイルすべてを1つのフォルダー,つまりサブフォルダーのない構造に入れてパッケージ化します。
条件 | 使用する構造 |
---|---|
ファイルの移動先が生成されたmakefileを使用しないIDEである。または,コードが必要な静的ファイルの相対位置に依存しない。 | 単一でサブフォルダーのない構造 |
生成されたmakefileを使用する,または,コードがファイルの相対位置に依存するため,移動先の開発環境で元の環境のフォルダー構造を維持しなければならない。 | 階層構造 |
階層構造を使用すると,関数packNGo
は二重構造の邮政编码
ファイルを作成し,主邮政编码
ファイルの中には次の複数の従属邮政编码
ファイルが入ります。
mlrFiles.zip
-
フォルダーツリー内のファイルmatlabroot
sDirFiles.zip
——モデルのコード生成に使用したビルドフォルダー内のファイルとそのサブフォルダー内のファイルotherFiles.zip
-
フォルダーやmatlabroot
开始
フォルダーツリーに入っていない必要なファイル。
従属邮政编码
フォルダー内のファイルパスは主邮政编码
ファイルのルートフォルダーに相対的なパスとなり,元の開発フォルダー構造を保持します。
zipファイルの名前の選択
既定の設定では,関数packNGo
によって
という名前がプライマリ模型
邮政编码
ファイルに与えられます。別の名前を付けることもできます。ファイルタイプの拡張子を付けずにファイル名を指定すると、関数は.
を名前の後に付けます。
モデルコードのzipファイルへのパッケージ化
PostCodeGenCommand
コンフィギュレーションパラメーター,関数packNGo
,およびモデルのビルド情報オブジェクトを使用してモデルコードファイルをパッケージ化します。パッケージ化作業のセットアップには次の情報を使用できます。
システムが生成したビルド情報オブジェクト。
この場合,関数
set_param
を使ってコンフィギュレーションパラメーターPostCodeGenCommand
を設定することにより,モデルコードが生成される前に,関数packNGo
が明示的に呼び出されるようにします。以下に例を示します。set_param (bdroot, ' PostCodeGenCommand”、“packNGo (buildInfo); ');
モデルのコードを生成してディスクに書き出した後,makefileを生成する前に,このコマンドはビルドプロセスが
packNGo
への呼び出しを評価するように指示します。このコマンドは,現在選択されているモデルに対して,システムが生成したビルド情報オブジェクトを使用します。プログラムを使って作成したビルド情報オブジェクト。
この場合,関数
packNGo
に渡すビルド情報オブジェクトに含めるパスやファイルは他のビルド情報関数を使って選択できます。以下に例を示します。. . .myModelBuildInfo = RTW.BuildInfo;addSourceFiles(myModelBuildInfo, {'test1.c' 'test2.c' '});. . .packNGo (myModelBuildInfo);
次の例では,packNGo
の既定の動作を変更する方法を示します。
目的... | 指定項目 |
---|---|
ファイルパッケージの構造を階層構造に変更 | packNGo (buildInfo packType的“分层”); |
プライマリ邮政编码 ファイルの名前を変更 |
packNGo (buildInfo“文件名”“zippedsrcs”); |
ファイルパッケージの構造を階層構造に変更し,主邮政编码 ファイルの名前を変更 |
packNGo (buildInfo packType的“分层”…… |
インクルードパスにあるヘッダーファイルを邮政编码 ファイルにインクルードする |
packNGo (buildInfo, minimalHeaders的假); |
解析エラーと不足しているファイルに対する警告を生成 | packNGo (buildInfo ignoreParseError的真实…… |
メモ
関数packNGo
は最初のpackNGo
引数で渡されたビルド情報を変更する場合があります。モデルコードのパッケージ化の一部として,packNGo
はモデルのビルド情報に記録されたソースパスおよびインクルードパスから追加ファイルを検索してビルド情報に追加します。
生成されたzipファイルの検査
移動可能であることを確認するには,生成された邮政编码
ファイルを検査します。使用している邮政编码
ツールによっては,パッケージを解凍せずにファイルを開いて検査できることがあります。ファイルを解凍する場合、階層構造でモデル コード ファイルをパッケージ化した場合は、メインの邮政编码
ファイルと2次的なzipファイルを解凍する必要があります。従属邮政编码
ファイルを解凍すると,ファイルの相対パスが維持されます。
zipファイルの移動と解凍
生成された邮政编码
ファイルを移動先の開発環境に移動してファイルを解凍します。
コードパッケージ化の例
この例では,コマンドラインインターフェイスを使用してモデル例rtwdemo_rtwintro
用に生成したコードファイルをパッケージ化する方法を説明します。
作業フォルダーを書き込み可能フォルダーとして設定します。
モデル
rtwdemo_rtwintro
を開いて作業フォルダーにそのコピーを保存します。次のMATLABコマンドを入力します。
set_param(‘rtwdemo_rtwintro’,‘PostCodeGenCommand’,……“packNGo (buildInfo,“packType”“分层”)的);
関数
packNGo
を呼び出す文字配列内では,文字配列“packType”
と“分层”
が入れ子になっているので,一重引用符を二重に使用しなければなりません。モデルのコードを生成します。
生成された
邮政编码
ファイルrtwdemo_rtwintro.zip
を検査します。邮政编码
ファイルには2つのセカンダリ邮政编码
ファイル,mlrFiles.zip
とsDirFiles.zip
が含まれています。邮政编码
ファイルmlrFiles.zip
とsDirFiles.zip
を検査します。邮政编码
ファイルを移動先の開発環境に移動して解凍します。
制限
関数packNGo
この関数に適用される制限の詳細についてはpackNGo
を参照してください。
既定以外の拡張子をもつ実行可能ファイル
ビルドプロセスがテンプレートmakefileアプローチを使用する場合,packNGo
はリンカーツールで指定された実行可能ファイル拡張子を使用して,パッケージングを必要とするバイナリアーティファクトを判別します。
既定値ではない拡張子をもつ実行可能ファイルを生成する場合,テンプレートmakefileと関連付けられたツールチェーンにその拡張子が保存されていることを確認します。詳細については,テンプレートmakefileとツールチェーンの関連付けを参照してください。
ビルドプロセスがツールチェーンで保存さている拡張子とは異なる拡張子をもつ実行可能ファイルを生成する場合,packNGo
はその実行可能ファイルをパッケージ化しません。