Skip to main content

IAR Embedded Workbench for Arm 9.70.x

IARユーティリティ

このセクションの内容:

This section describes the IAR utilities that handle the ELF and DWARF object formats.

ユーティリティオプションの説明

以下のページでは、さまざまなユーティリティで使用可能な各コマンドラインオプションの詳しいリファレンス情報を提供します。

-a

構文

-a

ツール

ielfdumparm

説明

このオプションは--all --no_strtabのショートカットとして使用します。

注意

このオプションは、IDEでは使用できません。

‑‑all

構文

‑‑all

ツール

ielfdumparm

説明

このオプションは、入力ファイルの汎用属性に加え、すべてのELFセクションの内容を出力に含めるときに使用します。セクションは、インデックスの順に出力されます。ただし、再配置可能セクションについては、そのセクションが再配置用に保持しているセクションの直後に各再配置可能セクションが出力されます。

デフォルトでは、セクションの内容は出力に含まれません。

注意

このオプションは、IDEでは使用できません。

‑‑bin

構文
‑‑bin[=range]
パラメータ

ielftoolアドレス範囲の指定を参照してください。

ツール

ielftool

説明

出力ファイルのフォーマットをロウバイナリに設定します。バイナリフォーマットにはアドレス情報はなく、ロウバイトだけが含まれています。範囲が指定されていない場合は、出力ファイルには、ELFファイルの内容になる一番小さいアドレスから、内容になる一番大きいアドレスのすべてのバイトが含まれています。範囲が指定されている場合は、範囲のバイトが含まれます。両方の場合も、内容のないギャップは、ゼロとして生成されます。

注記

コンテンツのない範囲が指定されると。出力ファイルは作成されません。

注意

オプションを設定するには、以下のように選択します。

[プロジェクト]>[オプション]>[出力コンバータ]

‑‑bin-multi

構文
‑‑bin-multi[=range[;range...]]
パラメータ

ielftoolアドレス範囲の指定を参照してください。

ツール

ielftool

説明

このオプションを使用して、1つまたは複数のロウバイナリ出力ファイルを生成します。範囲が指定されていない場合は、ロウバイナリ出力ファイルは、ELFファイルの内容のそれぞれの範囲に生成されます。範囲が指定されると、ロウバイナリ出力ファイルは、コンテンツのあるそれぞれの指定した範囲に生成されます。それぞれの場合も、各出力ファイルの名前には、その範囲の開始アドレスが含まれます。例えば、出力ファイルがout.binと指定されて範囲0x0-0x1F0x8000-0x8147が出力されるとき、out-0x0.binout-0x8000.binという名前のファイルが2つになります。

注意

このオプションは、IDEでは使用できません。

‑‑checksum

構文
‑‑checksum {symbol[{+|-}offset]|address}:size,
algorithm[:[1|2][a|m|z][W|L|Q][x][r][R][o][i|p]]
[,start];range[;range...]
パラメータ

symbol

チェックサム値が格納されるシンボルの名前です。これは、入力ELFファイルのシンボルテーブルに存在する必要があります。

offset

オフセットはシンボルに追加されます(またはマイナスのオフセット(-)の場合には差し引き) +-を使用したアドレス式は制限された方法でサポートされます。以下に例を示します。(start+7)-(end-2).

address

チェックサム値が格納される絶対アドレスです。

size

チェックサムのバイト数(12、または4)。チェックサムシンボルのサイズ以下でなければなりません。

algorithm

使用されるチェックサムアルゴリズムです。以下から選択します。

sum: バイト単位で計算される算術合計。結果は8ビットに切り詰められます。

sum8wide: バイト単位で計算される算術合計。結果はシンボルのサイズに切り詰められます。

sum32:ワード(32ビット)単位で計算される算術合計。

crc16、CRC16(生成多項式0x1021)。デフォルトで使用されます。

crc32、CRC32(生成多項式0x04C11DB7)。

crc64iso:CRC64iso(生成多項式0x1B)。

crc64ecma:CRC64ECMA(生成多項式0x42F0E1EBA9EA3693

crc=n: nの生成多項式を使用するCRC。

1|2

指定した場合は、次から選択します。

1、1の補数を指定します。

2、2の補数を指定します。

a|m|z

チェックサムのビット順序を逆にします。以下から選択します。

a、入力ビットを反転(それ以外作用なし)。

m、入力ビットと最終チェックサムを反転。

z、最終チェックサムを反転(それ以外作用なし)。

azの組み合わせは、mと同じ効果を持ちます。

W|L|Q

チェックサムを計算するユニットのサイズを指定します。以下から選択します。

W、繰返しごとに16ビットのチェックサムを計算します。

L、繰返しごとに32ビットのチェックサムを計算します。

Q、繰返しごとに64ビットのチェックサムを計算します。

ユニットのサイズを指定しなければ、デフォルトで8ビットが使用されます。

入力バイトシーケンスは次のように処理されます。

  • 8ビットチェックサム ユニットサイズbyte0、byte1、byte2、byte3など。

  • 16ビットチェックサム ユニットサイズbyte1、byte0、byte3、byte2など。

  • 32ビットチェックサム ユニットサイズbyte3、byte2、byte1、byte0、byte7、byte6、byte5、byte4、など。

  • 64ビットチェックサム ユニットサイズbyte7、byte6、byte5、byte4、byte3、byte2、byte1、byte0、byte15、byte14など。

注: チェックサム ユニットサイズは、入力バイトシーケンスが実行される順序にのみ影響します。チェックサムシンボルのサイズ、多項式、初期値、プロセッサのアドレスバスの幅などには影響しません。

ほとんどのソフトウェアCRC 実装には、1バイトのチェックサム ユニットサイズ(8ビット)が使用されます。ソフトウェアCRC実装が、ハードウェアCRC実装で計算されたチェックサムと一致しなければならない場合、WL、およびQパラメータが独占的に使用されます。ハードウェアCRC実装とともに動作しない場合は、WL、またはQパラメータは、異なるオーダーで入力バイトシーケンスを処理するので単に異なるチェックサムを計算します。

x

チェックサムのバイトオーダーを逆にします。これは、チェックサムの値にのみ影響します。

r

入力データのバイトオーダを逆にします。繰り返しごとのビット数がLまたはWパラメータを使用して設定されたのでない限り、これは何の影響ももたらしません。

R

逆順でチェックサム範囲を調べます。

例えば、範囲が0x100–0xFFF;0x2000–0x2FFFの場合、チェックサム計算は通常は0x100から始まり、0xFFFまでのすべてのバイトを計算していきます。続いて0x2000のバイトから0x2FFFまで続いて計算します。

Rパラメータを使用すると、計算は0x2FFFから始まり0x2000まで戻りながら計算し、次に0xFFFから0x100まで戻ります。

o

チェックサムにRocksoft モデル仕様を出力します。

i|p

startの値が0より大きい場合に、iまたはpを使用します。以下から選択します。

i、チェックサムの値を開始値で初期化します。

p、入力データの先頭にstart値を含むサイズsizeの1ワードを付けます。

start

デフォルトでは、チェックサムの初期値は0です。異なる初期値を与える必要がある場合には、startを使用してください。0でない場合は、ipのどちらかを指定する必要があります。

range

rangeは、チェックサムが計算される1 つまたは複数のメモリ範囲です。

通常、メモリ範囲が変更できる場合は、シンボルまたはブロックを使用することをお勧めします。0x8000-0x8347などの明示的なアドレスを使用して、コードが変更する場合は、終了アドレスを新しい値に更新する必要があります。{CODE}またはコードの最後にあるシンボルを使用する場合は、--checksumコマンドを更新する必要はありません。

ielftoolアドレス範囲の指定も参照してください。

ツール

ielftool

説明

このオプションは、指定範囲の指定アルゴリズムのチェックサムを計算するときに使用します。チェックサムに外部の定義がある場合(たとえばハードウェアのCRC実装など)、--checksumオプションに適切なパラメータを使用して、外部の設計に合わせてください。この場合、ハードウェアのドキュメントでその設計の詳細を参照してください。チェックサムは、symbolの元の値を置き換えます。新しい絶対シンボルが生成されます。計算されたチェックサムを含む_valueがサフィックスとしてsymbol名に付けられます。このシンボルは、デバッグ中など、必要に応じて後でチェックサム値へのアクセスに使用できます。

--checksumオプションがコマンドラインで複数回使用される場合、オプションは、左から右に評価されます。後で評価される--checksumオプションに指定されているsymbolで、チェックサムが計算される場合、エラーが発生します。

この例は、アドレス範囲0x8000–0x8FFF、開始値0の場合のcrc16アルゴリズムの使用方法を示します。

ielftool ‑‑checksum=_ _checksum:2,crc16;0x8000-0x8FFF sourceFile.out destinationFile.out

sourceFile.outから読み込まれる入力データ i と、その結果のサイズ2バイトのチェックサム値が、シンボル__checksumに格納されます。修正されたELFファイルは、destinationFile.outとして保存されます。sourceFile.outはそのまま変わりません。

次の例では、範囲の開始を指定するためにシンボルが使用されます。

ielftool ‑‑checksum=___checksum:2,crc16;__checksum_begin-0x8FFF sourceFile.out destinationFile.out

BLOCK10x4000-0x4337を占め、BLOCK20x8000-0x87FFを占める場合は、この例は0x4000~0x43370x8000~0x87FFのバイトのチェックサムを計算します。

ielftool ‑‑checksum=__checksum:2,crc16;{BLOCK1};{BLOCK2} BlxTest.out BlxTest2.out
関連項目

イメージの整合性を検証するチェックサム計算

ielftoolアドレス範囲の指定

注意

オプションを設定するには、以下のように選択します。

[プロジェクト]>[オプション]>[リンカ]>[チェックサム]

‑‑code

構文

‑‑code

ツール

ielfdumparm

説明

このオプションを使用して、実行可能コード(ELFセクション属性SHF_EXECINSTRを持つセクション)を含むすべてのセクションをダンプします。

注意

このオプションは、IDEでは使用できません。

‑‑create

構文

‑‑create libraryfileobjectfile1 ... objectfileN

パラメータ

libraryfile

コマンドの操作対象のライブラリファイルです。

objectfile1 ... objectfileN

ビルドするライブラリを構成するオブジェクトファイルです。引数はアーカイブファイルとなることもできます。この場合、アーカイブファイルの各メンバーは別々に指定されたように処理されます。

ファイル名またはディレクトリをパラメータとして指定する場合の規則も参照してください。

ツール

iarchive

説明

このコマンドは、一連のオブジェクトファイル(モジュール)および/またはアーカイブツールから新しいライブラリをビルドするときに使用します。モジュールは、コマンドラインで指定した順序でライブラリに追加されます。

コマンドラインでコマンドを指定しない場合、デフォルトで--createが使用されます。

注意

このオプションは、IDEでは使用できません。

‑‑delete、-d

構文
‑‑delete libraryfile objectfile1 ... objectfileN
-d libraryfile objectfile1 ... objectfileN
パラメータ

libraryfile

コマンドの操作対象のライブラリファイルです。

objectfile1 ... objectfileN

コマンドの操作対象のオブジェクトファイルです。

ファイル名またはディレクトリをパラメータとして指定する場合の規則も参照してください。

ツール

iarchive

説明

このコマンドは、オブジェクトファイル(モジュール)を既存のライブラリから削除するときに使用します。コマンドラインで指定したオブジェクトファイルがすべてライブラリから削除されます。

注意

このオプションは、IDEでは使用できません。

‑‑disasm_data

構文
‑‑disasm_data
ツール

ielfdumparm

説明

このコマンドを使用して、コードセクションであるかのように、ダンパーをダンプデータセクションに指示します。

注意

このオプションは、IDEでは使用できません。

‑‑edit

構文

‑‑edit steering_file

パラメータ

ファイル名またはディレクトリをパラメータとして指定する場合の規則を参照してください。

ツール

isymexport

説明

このオプションは、ステアリングファイルを指定するときに使用します。ステアリングファイルでは、isymexportの出力ファイルに含めるシンボルの選択を制御できるほか、必要に応じて、シンボルの名前を変更することもできます。

関連項目

ステアリングファイル.

注意

このオプションは、IDEでは使用できません。

‑‑export_locals

構文

‑‑export_locals [=symbol_prefix]

パラメータ

symbol_prefix

エクスポートしたシンボルの名前のカスタムプレフィックスは、デフォルトのプレフィックスLOCALを置き換えます。

ツール

isymexport

説明

このオプションを使用して、ROMイメージファイルからローカルシンボルと絶対シンボルをエクスポートします。エクスポートしたシンボルのデフォルト名はLOCAL_filename_symbolnameです。オプションパラメータsymbol_prefixを使用して、LOCALを自分のカスタムプレフィックスと置き換えます。

ROM イメージファイルからエクスポートすると、ソースファイル myFile.cのシンボル symb は、LOCAL_myFile_c_symb になります。

注意

このオプションは、IDEでは使用できません。

‑‑extract、-x

構文
‑‑extract libraryfile [objectfile1 ... objectfileN]
-x libraryfile [objectfile1 ... objectfileN]
パラメータ

libraryfile

コマンドの操作対象のライブラリファイルです。

objectfile1 ... objectfileN

コマンドの操作対象のオブジェクトファイルです。

ファイル名またはディレクトリをパラメータとして指定する場合の規則も参照してください。

ツール

iarchive

説明

このコマンドは、オブジェクトファイル(モジュール)を既存のライブラリから抽出するときに使用します。オブジェクトファイルのリストを指定すると、これらのファイルのみ抽出されます。オブジェクトファイルのリストを指定しない場合には、ライブラリ内のすべてのオブジェクトファイルが抽出されます。

注意

このオプションは、IDEでは使用できません。

-f

構文
-f filename
パラメータ

ファイル名またはディレクトリをパラメータとして指定する場合の規則を参照してください。

ツール

iarchiveielfdumparmiobjmanip、およびisymexport

説明

このオプションは、ツールで、指定ファイル(デフォルトのファイル名拡張子はxcl)からコマンドラインオプションを読み取る場合に使用します。

コマンドファイル内では、コマンドライン上で指定するときと全く同じように項目を記述します。ただし、改行文字はスペースまたはタブとして機能するため、複数行を使用することはできません。

C および C++ の両方のスタイルコメントをファイルで使用できます。ダブルクオートは、Microsoft Windows のコマンドライン環境と同じように動作します。

注意

このオプションは、IDEでは使用できません。

‑‑f

構文
‑‑f filename
パラメータ

ファイル名またはディレクトリをパラメータとして指定する場合の規則を参照してください。

ツール

iarchiveielfdumparmiobjmanip、およびisymexport

説明

このオプションは、ツールで、指定ファイル(デフォルトのファイル名拡張子はxcl)からコマンドラインオプションを読み取る場合に使用します。

コマンドファイル内では、コマンドライン上で指定するときと全く同じように項目を記述します。ただし、改行文字はスペースまたはタブとして機能するため、複数行を使用することはできません。

C および C++ の両方のスタイルコメントをファイルで使用できます。ダブルクオートは、Microsoft Windows のコマンドライン環境と同じように動作します。

ツールのコマンドラインで‑‑dependenciesを指定し、‑‑fを使用して指定したコマンドライン拡張ファイルは依存関係を生成しますが、-fを使用して指定したものは依存関係を生成しません。

関連項目

-f.

注意

このオプションは、IDEでは使用できません。

‑‑fake_time

構文
‑‑fake_time
ツール

iarchive

説明

このオプションを使用して同じタイムスタンプのライブラリファイルを生成します。使用した値は0x5CF00000で、おおよそ2019年5月30日18:08:32(正確な時間は設定した時間により異なります)です。このオプションでは、同じオブジェクトファイルに同じライブラリを生成できます。このオプションを使用しない場合、タイムスタンプは、同じ入力ファイルから一意のライブラリファイルを生成します。

注意

このオプションは、IDEでは使用できません。

‑‑fill

構文

‑‑fill [v;]pattern;range[;range...]

パラメータ

v

フィルコマンドについて仮想フィルを生成します。仮想フィルはチェックサムに含まれるフィルバイトですが、出力ファイルには含まれません。これの主な使用目的は、特定の種類のハードウェアで、イメージにより指定されないバイトに既知の値(通常は0xFFまたは0x0)がある場合です。

pattern

0xのプレフィックスを持つ16進数文字列(たとえば、0xEF)は、バイトのシーケンスと解釈され、デジットの各ペアが1バイトに相当します(たとえば、0x123456の場合、バイトのシーケンスは0x120x34、および0x56)です。このシーケンスは、フィルエリアで繰り返されます。フィルパターンの長さが、1バイトより大きい場合、アドレス0から開始されるように繰り返されます。

range

フィルのアドレス範囲を指定します。

ielftoolアドレス範囲の指定も参照してください。

ツール

ielftool

説明

このオプションは、1つ以上の範囲のすべてのギャップにパターンを埋め込むときに使用します。パターンは、式または16進数文字列のいずれかです。この内容は、フィルパターンが開始アドレスから終了アドレスまで繰り返し埋め込まれように計算されます。そして、実際の内容でパターンが上書きされます。

アライメントを考慮することもできます。ハーフワードまたはワードアクセスでアクセスするフィルを生成する場合、フィルター範囲のアドレスがハーフワードまたはワードと一致しているようにしてください。

--fillオプションがコマンドラインで複数回使用される場合、フィル範囲がそれぞれと重複することはできません。

注意

オプションを設定するには、以下のように選択します。

[プロジェクト]>[オプション]>[リンカ]>[チェックサム]

‑‑front_headers

構文
‑‑front_headers
ツール

ielftool

説明

このオプションを使用して、プログラムとセクションヘッダがファイルの最後ではなく最初にあるELFを出力します。

注意

このオプションは、IDEでは使用できません。

‑‑generate_vfe_header

構文

‑‑generate_vfe_header

ツール

isymexport

説明

このオプションを使用して、破棄された可能性のある関数への仮想関数呼び出しがイメージに含まれないことを宣言します。

リンカが仮想関数の除去を実行する際、不要と思われる仮想関数は破棄されます。最適化が正しく適用されるためには、破棄された関数に影響する仮想関数呼び出しがイメージに必要です。

関連項目

仮想関数の除去.

注意

このオプションを設定するには、以下を使用します。

[プロジェクト]>[オプション]>[リンカ]>[追加オプション]

‑‑hide_symbols

構文
‑‑hide_symbols
ツール

iexe2obj

説明

このオプションを使用して、入力ファイルからすべてのシンボルを非表示にします。

注意

このオプションは、IDEでは使用できません。

‑‑ihex

構文

‑‑ihex

ツール

ielftool

説明

出力ファイルのフォーマットを32ビットリニアなIntel拡張hexに設定します。hexadecimal textフォーマットは、Intelによって定義されています。

注記

Intel拡張は232-1より大きいアドレスを示すことができません。アプリケーションにそのようなアドレスが含まれている場合は、別のフォーマットを使用する必要があります。

注意

オプションを設定するには、以下のように選択します。

[プロジェクト]>[オプション]>[リンカ]>[出力コンバータ]

‑‑ihex-len

構文

‑‑ihex-len=length

パラメータ

length

レコードののデータバイト数。

ツール

ielftool

説明

Intel Hexレコードのデータバイト数を最大に設定します。このオプションは、‑‑ihexオプションと組み合わせてのみ使用できます。デフォルトでは、Intel Hexレコードのデータバイト数は16です。

注意

このオプションは、IDEでは使用できません。

‑‑json

構文

‑‑json

ツール

ielfdumparm

説明

ielfdumparm からの出力を JSON 形式 でフォーマットするには、このオプションを使用します。情報は、‑‑json オプションなしの場合と同じで、単に機械可読形式で出力されるだけです。ただし、重要な違いは、--all-a、および同様のオプションの動作です。--json オプションがない場合、最初のダンプは ELF ヘッダからの情報であり、その後のダンプは各セクションごとに順番に行われます。--json オプションを使用すると、1 つの大きなオブジェクトが生成されます。

JSON 形式にはすべてのフィールドの説明が含まれており、出力の説明が必要な場合に推奨されます。

注記

ielfdumparm からの出力を JSON 形式 でフォーマットするには、出力をより機械可読にする他のオプションを暗黙的に設定せずに、オプション --just_json を使用します。

関連項目

‑‑just_json

注意

このオプションは、IDEでは使用できません。

‑‑json_schema

構文

‑‑json_schema

ツール

ielfdumparm

説明

ielfdumparm からの出力は、オプション ‑‑json を使用して JSON 形式で生成できます。JSON スキーマを生成するには、このオプションを使用します。スキーマにはすべてのフィールドの説明が含まれています。

関連項目

‑‑json

注意

このオプションは、IDEでは使用できません。

‑‑just_json

構文
--just_json
ツール

ielfdumparm

説明

ielfdumparm からの出力を JSON 形式でフォーマットするには、--json オプションのように出力を機械可読にする他のオプションを暗黙的に設定せずに、このオプションを使用します。

関連項目

‑‑json

注意

このオプションは、IDEでは使用できません。

‑‑keep_mode_symbols

構文
‑‑keep_mode_symbols
ツール

iexe2obj

説明

このオプションを使用して、入力ファイルから出力ファイルにモードシンボルをコピーします。これは、逆アセンブラなどによって使用されます。

注意

このオプションは、IDEでは使用できません。

‑‑no_bom

構文
‑‑no_bom
ツール

iarchiveielfdumparmiobjmanip、およびisymexport

説明

このオプションを使用して、UTF-8出力ファイルを生成するときに、バイトオーダーマーク(BOM)を省略します。

関連項目

‑‑text_out および テキストエンコーディング

注意

このオプションは、IDEでは使用できません。

‑‑no_error_summary

構文

‑‑no_error_summary

ツール

ielfdumparm

説明

このオプションを使用して、他のすべての出力の後に印刷される、報告されたielfdumparmエラー/警告の数のサマリーを抑制します。エラーとワーニングは通常通りに出力されます。

注意

このオプションは、IDEでは使用できません。

‑‑no_header

構文

‑‑no_header

ツール

ielfdumparm

説明

デフォルトでは、実際のファイル内容の前に標準のリストヘッダが追加されます。このオプションを使用して、リストヘッダの出力を無効化します。

注意

このオプションは、IDEでは使用できません。

‑‑no_rel_sections

構文

‑‑no_rel_sections

ツール

ielfdumparm

説明

デフォルトでは、再配置可能なファイルのセクションの内容が出力として生成された場合、関連のセクションがあればそれもまた必ず出力に含まれます。このオプションを使用して、再配置セクションの出力を無効化します。

注意

このオプションは、IDEでは使用できません。

‑‑no_strtab

構文

‑‑no_strtab

ツール

ielfdumparm

説明

このオプションを使用して、文字列のテーブルセクション(SHT_STRTAB型のセクション)のダンプを無効にします。

注意

このオプションは、IDEでは使用できません。

‑‑no_utf8_in

構文
‑‑no_utf8_in
ツール

ielfdumparm

説明

通常、ダンパーはIARツールによって生成されたELFファイルが、UTF-8テキストエンコードを使用するかどうかを決定し、正しい出力を生成できます。IARツールでなはいもので生成されたELFファイルには、ダンパーは、このオプションが使用されてない限り、UTF-8エンコードを想定します。この場合、エンコードは現在のシステムのデフォルトロケールに従うように想定されます。

注記

これは、文字が7-ビット以上のASCIIがパスやシンボルなどに使用されている場合にだけ影響します。

関連項目

テキストエンコーディング

注意

このオプションは、IDEでは使用できません。

‑‑offset

構文

‑‑offset [-]offset

パラメータ

offset

生成された出力ファイルのすべてのアドレスで、オフセットが追加(または-が指定されている場合には差し引き)されます。

ツール

ielftool

説明

このオプションを使用して、生成された出力ファイルの各出力レコードのアドレスにオフセットを追加または差し引きします。オプションはMotorola S-records、Intel Hex、TI-Txt、Simple-Codeでのみ動作します。オプションはELFファイルまたはバイナリファイル(--binアドレス情報を含まない)を生成するときには影響しません。このオプションでは、エントリーポイントを含むすべてのコンテンツは変更されません。出力フォーマットのアドレスのみです。

‑‑offset 0x30000

これはすべてのアドレスに0x30000オフセットを追加します。結果として、アドレス0x4000にリンクされたコンテンツは0x34000に配置されます。

注意

このオプションは、IDEでは使用できません。

‑‑output, -o

構文
-o {filename|directory} 
‑‑output {filename|directory} 
パラメータ

ファイル名またはディレクトリをパラメータとして指定する場合の規則を参照してください。

ツール

iarchiveielfdumparm.

説明

iarchive

デフォルトでは、iarchiveは、iarchiveコマンドの後の最初の引数を、作成するライブラリファイルの名前であるとみなします。このオプションは、ライブラリ用に別のファイル名を明示的に指定する場合に使用します。

ielfdumparm

デフォルトでは、ダンプ結果の出力先はコンソールになります。このオプションは、出力先をファイルに変更するときに使用します。出力ファイルのデフォルト名は、入力ファイル名にファイル名拡張子idを追加したものです。

また、入力ファイル名の後にファイルやディレクトリを指定して、出力ファイルを指定することもできます。

注意

このオプションは、IDEでは使用できません。

‑‑parity

構文
‑‑parity{symbol[+offset]|address}:size,algo:flashbase[:flags];range[;range...]
パラメータ

symbol

パリティバイトが格納されるシンボルの名前です。これは、入力ELFファイルのシンボルテーブルに存在する必要があります。

offset

シンボルへのオフセット。デフォルトでは0です。

address

パリティバイトが格納される絶対アドレスです。

size

パリティの生成で使用可能な最大バイト数。この値を超えるとエラーが出力されます。このサイズは、ELFファイルの指定されたシンボルに合っている必要があります。

algo

以下から選択します。

odd、奇数のパリティを使用。

even、偶数のパリティを使用。

flashbase

フラッシュメモリの開始アドレス。flashbaseから開始アドレスまでについては、パリティビットは生成されません。flashbaseと開始アドレスの範囲が重なる場合、すべてのアドレスにパリティビットが生成されます。

flags

以下から選択します。

r、各ワード内でバイトオーダを反転させます。

L、一度に4バイトを処理します。

W、一度に2バイトを処理します。

B、一度に1バイトを処理します。

range

パリティバイトを生成するアドレス範囲。

ielftoolアドレス範囲の指定も参照してください。

ツール

ielftool

説明

指定範囲にパリティバイトを生成するときに使用します。この範囲は左から右の順になり、奇数または偶数のアルゴリズムを使用してパリティビットが生成されます。パリティビットは最終的に指定のシンボル内に格納され、アプリケーションからアクセスできるようになります。

注意

このオプションは、IDEでは使用できません。

‑‑prefix

構文
‑‑prefix prefix
パラメータ

prefix

シンボルのプレフィックスとセクション名。

ツール

iexe2obj

説明

デフォルトでは、出力ファイルのベース名は、シンボルやラッパで定義されるセクション名にプレフィックスとして使用されます。このオプションを使用して、これらのシンボルとセクション名のカスタムプレフィックスを設定します。

関連項目

‑‑wrap

注意

このオプションは、IDEでは使用できません。

‑‑ram_reserve_ranges

構文

‑‑ram_reserve_ranges[=symbol_prefix]

パラメータ

symbol_prefix

このオプションによって作成されたシンボルのプレフィックス。

ツール

isymexport

説明

このオプションを使用して、イメージが使用するRAMのエリアについてシンボルを生成します。各エリアにシンボルが1つ生成されます。各シンボルの名前はエリア名に基づき、オプションのパラメータsymbol_prefixがプレフィックスとして付きます。

あるエリアをカバーするシンボルをこの方法で生成すると、影響を受けるアドレスにリンカで他の内容を配置しないように防ぐことができます。これは、既存のイメージに対するリンク処理の際に役立ちます。

‑‑ram_reserve_ranges‑‑reserve_rangesを同時に使用する場合、RAMエリアは ‑‑ram_reserve_rangesオプションからプレフィックスを、RAM以外のエリアは‑‑reserve_ranges オプションからプレフィックスをそれぞれ取得します。

関連項目

‑‑reserve_ranges.

注意

このオプションは、IDEでは使用できません。

‑‑range

構文

‑‑range start-end

パラメータ

start-end

開始アドレスがstart以上、終了アドレスがendより小さいコードを逆アセンブルします。

ツール

ielfdumparm

説明

このオプションを使用して、実行可能ファイルのコードをダンプする範囲を指定します。

注意

このオプションは、IDEでは使用できません。

‑‑raw

構文

‑‑raw

ツール

ielfdumparm

説明

デフォルトでは、特定の種類のセクション専用テキストフォーマットを使用して、多数のELFセクションがダンプされます。このオプションは、汎用テキストフォーマットを使用して、選択した各ELFセクションをダンプするときに使用します。

汎用テキストフォーマットを使用する場合、セクション内の各バイトが16進数フォーマットまたは、必要に応じてASCIIテキストにダンプされます。

注記

Raw-binaryは、64ビットアドレスに関して問題はありません。

注意

このオプションは、IDEでは使用できません。

‑‑raw_io

Syntax
--raw_io
ツール

ielfdumparm

説明

このオプションを使用すると、ielfdumparmは追加の改行文字などを含まない、最大限の機械可読出力を生成します。このオプションは、 ‑‑no_bom オプションも暗黙的に設定することに注意してください。

注意

このオプションは、IDEでは使用できません。

‑‑remove_file_path

構文

‑‑remove_file_path

ツール

iobjmanip

説明

このオプションは、iobjmanipで、生成されたオブジェクトファイルからプロジェクトソースツリーのディレクトリ情報を削除するときに使用します。つまり、ELFオブジェクトファイルのファイルシンボルが変更されることになります。

このオプションは、‑‑remove_section ".comment"と組み合わせて使用する必要があります。

注意

このオプションは、IDEでは使用できません。

‑‑remove_section

構文

‑‑remove_section {section|number}

パラメータ

section

セクションを削除します(複数も可)。

number

削除されるセクションの番号。セクション番号は、ielfdumparmを使用して作成したオブジェクトダンプから取得できます。

ツール

iobjmanip

説明

このオプションでは、出力ファイルを作成するときにiobjmanipで指定のセクションを省略します。

注意

このオプションは、IDEでは使用できません。

‑‑rename_section

構文
‑‑rename_section {oldname|oldnumber}=newname
パラメータ

oldname

セクションをリネームします(複数も可)。

oldnumber

リネームされるセクションの番号。セクション番号は、ielfdumparmを使用して作成したオブジェクトダンプから取得できます。

newname

セクションの新しい名前。

ツール

iobjmanip

説明

このオプションでは、出力ファイルを作成するときにiobjmanipで指定のセクションをリネームします。

注意

このオプションは、IDEでは使用できません。

‑‑rename_symbol

構文
‑‑rename_symbol oldname =newname
パラメータ

oldname

リネームするシンボル。

newname

シンボルの新しい名前。

ツール

iobjmanip

説明

このオプションでは、出力ファイルを作成するときにiobjmanipで指定のシンボルをリネームします。

注意

このオプションは、IDEでは使用できません。

‑‑replace、-r

構文
‑‑replace libraryfile objectfile1 ... objectfileN
-r libraryfile objectfile1 ... objectfileN
パラメータ

libraryfile

コマンドの操作対象のライブラリファイルです。

objectfile1 ... objectfileN

コマンドの操作対象のオブジェクトファイルです。引数はアーカイブファイルとなることもできます。この場合、アーカイブファイルの各メンバーは別々に指定されたように処理されます。

ファイル名またはディレクトリをパラメータとして指定する場合の規則も参照してください。

ツール

iarchive

説明

このコマンドは、既存のライブラリにオブジェクトファイル(モジュール)の置換または追加、およびまたはファイルのアーカイブを行うときに使用します。コマンドラインで指定したモジュールにより、ライブラリ内の同一名の既存のモジュールが置換されます。同一名のファイルが存在しない場合には、コマンドラインで指定したファイルがライブラリに追加されます。

注意

このオプションは、IDEでは使用できません。

‑‑reserve_ranges

構文

‑‑reserve_ranges[=symbol_prefix]

パラメータ

symbol_prefix

このオプションによって作成されたシンボルのプレフィックス。

ツール

isymexport

説明

このオプションを使用して、イメージが使用するROMおよびRAMのエリアについてシンボルを生成します。各エリアにシンボルが1つ生成されます。各シンボルの名前はエリア名に基づき、オプションのパラメータsymbol_prefixがプレフィックスとして付きます。

あるエリアをカバーするシンボルをこの方法で生成すると、影響を受けるアドレスにリンカで他の内容を配置しないように防ぐことができます。これは、既存のイメージに対するリンク処理の際に役立ちます。

‑‑reserve_ranges‑‑ram_reserve_rangesを同時に使用する場合、RAMエリアは‑‑ram_reserve_rangesオプションからプレフィックスを、RAM以外のエリアは‑‑reserve_rangesオプションからプレフィックスをそれぞれ取得します。

関連項目

‑‑ram_reserve_ranges.

注意

このオプションは、IDEでは使用できません。

‑‑section、-s

構文
‑‑section sec_number|sec_name[,...]
‑s sec_number|sec_name[,...]
パラメータ

sec_number

ダンプされるセクションの数。

sec_name

ダンプされるセクションの名前。

ツール

ielfdumparm

説明

このオプションは、指定した番号のセクションまたは指定した名前のセクションの内容をダンプするときに使用します。選択したセクションに再配置可能セクションが関連付けられている場合には、その内容も出力されます。

このオプションを使用する場合、入力ファイルの一般属性は出力に含まれません。

セクション番号や名前をカンマで区切るか、このオプションを複数回使用することにより、複数のセクション番号や名前を指定できます。指定されたセクションが見つからない場合、その内容は出力から除外されますが、他のすべてのセグメントの内容が含まれます。

デフォルトでは、セクションの内容は出力に含まれません。

注記

このオプションは、オプション‑‑segment|-gとともに使用することはできません。

-s 3,17                  /* Sections #3 and #17
-s .debug_frame,42       /* Any sections named .debug_frame and
                            also section #42 */ 

注意

このオプションは、IDEでは使用できません。

‑‑segment、 -g

構文
‑‑segment seg_number[,...]
‑g seg_number[,...]

パラメータ

seg_number

内容が出力に含まれるセグメントの番号。

ツール

ielfdumparm

説明

このオプションを使用して、出力に含める特定のセグメント(プログラムヘッダにより示される実行可能イメージの部分)を選択します。指定されたセグメントが見つからない場合、出力から除外されますが、他のすべてのセグメントが含まれます。

セグメント番号をカンマで区切るか、このオプションを複数回使用することにより、複数のセグメント番号を指定できます。

注記

このオプションは、オプション‑‑section|-sとともに使用することはできません。

注意

このオプションは、IDEでは使用できません。

‑‑self_reloc

構文

‑‑self_reloc

ツール

ielftool

説明

このオプションは一般的な使用を意図していないため、意図的に文書化されていません。

注意

このオプションは、IDEでは使用できません。

‑‑show_entry_as

構文
‑‑show_entry_as name
パラメータ

name

出力ファイルのプログラムエントリーポイントに与えられる名前。

ツール

isymexport

説明

このオプションを使用して、名前nameの下に入力として与えられたアプリケーションのエントリーポイントエクスポートします。

注意

このオプションは、IDEでは使用できません。

‑‑silent

構文
‑‑silent
ツール

iarchiveielftool

説明

ツールが標準出力ストリームにメッセージ送信せずに処理を実行するように設定します。

デフォルトでは、ツールによりさまざまなメッセージが標準出力ストリームから送信されます。このオプションを使用して、この動作を回避することができます。ツールはエラーおよびワーニングメッセージをエラー出力ストリームに送信するため、この設定に関係なくそれらは表示されます。

注意

このオプションは、IDEでは使用できません。

‑‑simple

構文

‑‑simple

ツール

ielftool

説明

出力ファイルのフォーマットを簡易コードに設定します。バイナリフォーマットにはアドレス情報が含まれています。

注記

シンプルコードは232-1より大きいアドレスを示すことができます。アプリケーションにそのようなアドレスが含まれている場合は、より高いバージョン番号のシンプルコードファイルが生成されます。そのようなファイルは、この高いバージョンを扱うことができる、シンプルコードリーダーでのみ読み取りできます。

注意

オプションを設定するには、以下のように選択します。

[プロジェクト]>[オプション]>[出力コンバータ]

‑‑simple-ne

構文

‑‑simple-ne

ツール

ielftool

説明

出力ファイルのフォーマットを簡易コードに設定しますが、エントリレコードは生成されません。

注意

オプションを設定するには、以下のように選択します。

[プロジェクト]>[オプション]>[出力コンバータ]

‑‑source

構文

‑‑source

ツール

ielfdumparm

説明

このオプションを使用して、実行可能ファイルからコードをダンプする際、ielftoolが各文のソースをその文のコードより前にインクルードするようにします。これが機能するためには、実行可能イメージをデバッグ情報とともにビルドし、ソースコードが元の場所でアクセス可能な状態でなければなりません。

注意

このオプションは、IDEでは使用できません。

‑‑srec

構文

‑‑srec

ツール

ielftool

説明

出力ファイルのフォーマットをMotorola S-recordsに設定します。hexadecimal textフォーマットは、Motorolaによって定義されています。オプションielftool‑‑srec-len、および‑‑srec-s3onlyを使用して、使用するフォーマットを変更できます。

注記

Motorola Sレコードは 232-1より大きいアドレスを示すことができません。アプリケーションにそのようなアドレスが含まれている場合は、別のフォーマットを使用する必要があります。

注意

オプションを設定するには、以下のように選択します。

[プロジェクト]>[オプション]>[出力コンバータ]

‑‑srec-len

構文

‑‑srec-len=length

パラメータ

length

各S-record内のデータバイト数。

ツール

ielftool

説明

S-recordのデータバイト数の最大数を設定します。このオプションは、‑‑srecオプションと組み合わせてのみ使用できます。デフォルトでは、S-recordのデータバイト数は16です。

注意

このオプションは、IDEでは使用できません。

‑‑srec-s3only

構文

‑‑srec-s3only

ツール

ielftool

説明

S-record出力にレコードのサブセット(すなわちS0、S3、S7レコード)のみが含まれるように制限します。このオプションは、--srecオプションと組み合わせて使用できます。

注意

このオプションは、IDEでは使用できません。

‑‑strip

構文

‑‑strip

ツール

iobjmanipielftool

説明

このオプションでは、出力ファイル を書き込む前に、デバッグ情報を含むすべてのセクションを削除します。iobjmanipはすべてのモジュールローカル関数、変数、およびセクションシンボルの名前も削除します。

注記

ielftool では、--strip リンカオプションを使用していないELFイメージが必要です。リンカで--stripオプションを使用する場合、それを削除し、代わりにielftool--stripオプションを使用します。

注意

オプションを設定するには、以下のように選択します。

[プロジェクト]>[オプション]>[リンカ]>[出力]>[出力ファイルにデバッグ情報を含める]

‑‑symbols

構文
‑‑symbols libraryfile
パラメータ

libraryfile

コマンドの操作対象のライブラリファイルです。

ファイル名またはディレクトリをパラメータとして指定する場合の規則も参照してください。

ツール

iarchive

説明

このコマンドは、指定したライブラリ内のオブジェクトファイル(モジュール)によって定義されるすべての外部シンボルを、そのシンボルを定義しているオブジェクトファイル(モジュール)の名前とともにリストするときに使用します。

出力抑止モード (‑‑silent)の場合、このコマンドは、ライブラリファイルのシンボル関連構文チェックを実行し、エラーと警告のみを表示します。

注意

このオプションは、IDEでは使用できません。

‑‑text_out

構文
‑‑text_out{utf8|utf16le|utf16be|locale}
パラメータ

utf8

UTF-8エンコードを使用

utf16le

UTF-16リトルエンディアンエンコードを使用

utf16be

UTF-16ビッグエンディアンエンコードを使用

locale

システムのロケールエンコードを使用

ツール

iarchiveielfdumparmiobjmanip、およびisymexport

説明

このオプションを使用して、テキスト出力ファイルを生成するときに使用するのエンコードを指定します。

リストファイルのデフォルトは、メインソースファイルと同じエンコードが使用されます。すべてのその他のテキストファイルのデフォルトは、バイトオーダーマーク(BOM)のあるUTF-8です。

BOMなしのUTF-8エンコードでテキストを出力する場合、オプション--no_bomも使用できます。

関連項目

‑‑no_bom および テキストエンコーディング

注意

このオプションは、IDEでは使用できません。

‑‑titxt

構文

‑‑titxt

ツール

ielftool

説明

出力ファイルのフォーマットをTexas Instruments によって定義された 16 進テキスト形式である Texas Instruments TI-TXT に設定します。

注記

Texas Instruments TI–TXT は 232-1より大きいアドレスを示すことができます。

注意

オプションを設定するには、以下のように選択します。

[プロジェクト]>[オプション]>[出力コンバータ]

‑‑toc、-t

構文
‑‑toc libraryfile
-t libraryfile
パラメータ

libraryfile

コマンドの操作対象のライブラリファイルです。

ファイル名またはディレクトリをパラメータとして指定する場合の規則も参照してください。

ツール

iarchive

説明

このコマンドは、指定したライブラリ内のすべてのオブジェクトファイル(モジュール)をリストするときに使用します。

出力抑止モード (‑‑silent)の場合、このコマンドは、ライブラリファイルの基本的な構文チェックを実行し、エラーと警告のみを表示します。

注意

このオプションは、IDEでは使用できません。

‑‑update_symbol

構文
‑‑update_symbol symbol,{hexstring|(filename)}[,force]
パラメータ

symbol

置換するコンテンツのシンボル。

hexstring

0xEFなどの0xがプレフィックスの16進数文字列は、バイトのシーケンスと解釈され、桁の各ペアが1バイトに相当します。例えば、0x123456は、バイト0x120x34、および0x56のシーケンスとして解釈されます。指定したバイトは、シンボルの新しいコンテンツになります。

(filename)

シンボルの新しいコンテンツを含むファイル。ファイルのすべてのバイとは、ELFファイルにあるように挿入されます。

force

警告されると更新を強制します。

ツール

ielftool

説明

このオプションは、指定したシンボルのELFファイルコンテンツを置換します。ielftoolは、新しいコンテンツのバイト数(16進数文字列で指定されるまたはファイルからの読み取り)が、ELFファイルの現在のシンボルのサイズと一致するかをチェックします。サイズが一致しない場合は、操作が中止されます。

forceパラメータを使用して、ielftoolが、一部のELFシンボルにサイズがなく、サイズが一致しない場合でも、操作を実行します(通常生成されたアセンブラ、またはツールチェーンで生成されたものは、シンボルサイズが設定されません)。処理を強制する場合は、入力として更新しているファイルは破損するので、誤って使用してしまわないように気を付けなければなりません。

注意

このオプションは、IDEでは使用できません。

‑‑update_typeless_globals

構文

‑‑update_typeless_globals[=codeSectionName,dataSectionName]

パラメータ

codeSectionName

Codeセクション名。

dataSectionName

Dataセクション名。

ツール

iobjmanip

説明

このオプションを使用すると、オブジェクトファイルの関連のグローバルシンボルのタイプを更新します。

ELFタイプ(ELF属性STT_NOTYPE)のないグローバルシンボルは、そのタイプセットがCode (STT_FUNC) または Data (STT_OBJECT)です。パラメータが指定されていない場合は、シンボルを含むセクションの属性は、これがCodeまたはDataセクションなのかを決定するために使用されます。

オプションのセクション名が使用される場合は、dataSectionNameと一致するセクションのシンボルは、Dataとして扱われます。同様に、codeSectionNameと一致するセクションのシンボルは、Codeとして扱われます。セクションがdataSectionNameまたはcodeSectionNameのどちらにも一致しない場合は、ワーニングが生成され、セクションのシンボルは更新されません。

注意

このオプションは、IDEでは使用できません。

‑‑use_full_std_template_names

構文

‑‑use_full_std_template_names

ツール

ielfdumparm

説明

一部の標準C++テンプレート名は通常、マングル化されていないシンボル名で省略されて出力で使用されます(たとえば、"std::basic_string<char、std::char_traits<char>、std_::allocator<char>>"の代わりに"std::string"というように)。このオプションを使用して、ielfdumparmが省略されていない形式を使用するようにします。

注意

このオプションは、IDEでは使用できません。

‑‑utf8_text_in

構文
‑‑utf8_text_in
ツール

iarchiveielfdumparmiobjmanip、およびisymexport

説明

このオプションを使用して、ツールは、バイト オーダーマーク(BOM)のないテキスト入力ファイルを読み込むとき、UTF-8 エンコードを使用できることを指定します。

注記

このオプションはソースファイルには適用されません。

関連項目

テキストエンコーディング

注意

このオプションは、IDEでは使用できません。

‑‑verbose、-V

構文
‑‑verbose
-V (iarchive only)
ツール

iarchiveielftool

説明

このオプションは、診断メッセージのほかに、実行された操作をツールで報告するときに使用します。

注意

この設定は常に有効化されているため、このオプションはIDEでは使用できません。

‑‑version

構文
‑‑version
ツール

iarchiveielfdumparmielftooliobjmanipisymexport

説明

このオプションを使用して、バージョン情報をコンソールに送信してから終了するようツールに指示します。

注意

このオプションは、IDEでは使用できません。

‑‑vtoc

構文
‑‑vtoc libraryfile
パラメータ

libraryfile

コマンドの操作対象のライブラリファイルです。

ファイル名またはディレクトリをパラメータとして指定する場合の規則も参照してください。

ツール

iarchive

説明

このコマンドは、指定したライブラリ内のすべてのオブジェクトファイル(モジュール)の名前、サイズ、変更日時をリストするときに使用します。

出力抑止モード (‑‑silent)の場合、このコマンドは、ライブラリファイルの基本的な構文チェックを実行し、エラーと警告のみを表示します。

注意

このオプションは、IDEでは使用できません。

‑‑wrap

構文
‑‑wrap symbol
パラメータ

symbol

iexe2objの出力ファイルのクライアントによって呼び出し可能な関数シンボルです。

ツール

iexe2obj

説明

このオプションを使用して、ラッパ関数を関数シンボルに生成します。

注意

このオプションは、IDEでは使用できません。