mapfile 指令は複数の行に渡ることができ、改行を含む空白文字を任意の数だけ含めることができます。
すべての構文説明について、次の表記が適用されます。
空白文字または改行は、名前または値の中を除いてどこにでも入れられます。
ハッシュ文字 (#) で始まり改行で終わるコメントは、空白文字を入れることができる場所であれば、どこにでも入れられます。コメントはリンカーによって解釈されず、ドキュメント化のためのみに使用されます。
すべての指令はセミコロン (;) で終了します。{....} セクション内の最後のセミコロンは省略できます。
固定幅のすべての文字エントリ、すべてのコロン (:)、セミコロン (;)、代入 (=, +=, -=)、および括弧 {....} は、そのままの文字を入力します。
「斜体文字」で示されたエントリはすべて、適切なもので置き換える。
[ .... ] 括弧はオプションの構文を示すために使用されます。括弧は入力しません。実際の指令内には現れません。
名前は大文字と小文字の区別がある文字列です。Table 8–2 には、mapfile 内で一般的に見られる名前およびその他の文字列のリストが含まれています。名前は 3 つの異なる形式で指定できます。
引用符なし
引用符なしの名前は英字および数字のシーケンスです。最初の文字は英字である必要があり、0 個以上の英字または数字が後に続きます。パーセント (%)、斜線 (/)、ピリオド (.)、および下線 (_) は英字としてカウントされます。ドル記号 ($)、およびハイフン (-) は数字としてカウントされます。
単一引用符
単一引用符 (') で囲んだ名前は、単一引用符または改行以外のすべての文字を含むことができます。すべての文字はリテラル文字として解釈されます。この引用形式は、引用符なしの名前では許可されない通常のプリント可能文字を含むファイルパスやその他の名前を指定する場合に便利です。
二重引用符
二重引用符 (") で囲んだ名前は、二重引用符または改行以外のすべての文字を含むことができます。バックスラッシュ (\) はエスケープ文字です。C プログラミング言語の文字列リテラル内で使用される場合と同じように機能します。Table 8–1 で示すように、前にバックスラッシュが付いた文字は、それらが表す文字に置換されます。Table 8–1 に示す文字以外の文字がバックスラッシュのあとに続くと、エラーになります。
value は数値を表し、整数定数について C 言語で使用される規則に従って、16 進数、10 進数、または 8 進数が使えます。すべての値は符号なしの整数値で、32 ビット出力オブジェクトの場合は 32 ビット、64 ビット出力オブジェクトの場合は 64 ビットです。
segment_flags には、Table 8–3 に示す 1 つ以上の値の空白区切りのリストとしてメモリーアクセス権を指定します。これらの値は <sys/elf.h> 内に定義されている PF_ 値に対応します。
|
|
|