-FOrm


出力形式を指定します。

[指定形式]

-FOrm=format

 

-

省略時解釈

ロード・モジュール・ファイルを出力します(-form=absoluteオプションの指定と同じです)。

[詳細説明]

-

出力形式formatを指定します。

-

formatに指定可能なものを以下に示します。

Absolute

ロード・モジュール・ファイルを出力します。

Relocate

リロケータブル・ファイルを出力します。

Object

オブジェクト・ファイルを出力します。

-extractオプションでライブラリから1個のモジュールをオブジェクト・ファイルとして取り出すときに使用します。

Library[={S|U}]

ライブラリ・ファイルを出力します。

library=sを指定した場合は,出力ファイルをシステム・ライブラリ・ファイルとします。

library=uを指定した場合は,出力ファイルをユーザ・ライブラリ・ファイルとします。

libraryのみを指定した場合は,library=uを指定したものとみなします。

Hexadecimal

インテル拡張ヘキサ・ファイルを出力します。

詳細については,「3.5 インテル拡張ヘキサ・ファイル」を参照してください。

Stype

モトローラ・Sタイプ・ファイルを出力します。

詳細については,「3.6 モトローラ・Sタイプ・ファイル」を参照してください。

Binary

バイナリ・ファイルを出力します。

[備考]

-

出力形式と入力ファイル,他のオプションとの関係を以下に示します。

図 2.2

出力形式と入力ファイル,他のオプションとの関係

出力形式

指定オプション

入力可能なファイル形式

指定可能なオプション注1

Absolute

-stripあり

ロード・モジュール・ファイル

-input,-output

上記以外

オブジェクト・ファイル

リロケータブル・ファイル

バイナリ・ファイル

ライブラリ・ファイル

-input,-library,-binary,-debug,-nodebug,-cpu,-start,-rom,-entry,-output,-map,-padding,-hide,-optimize/-nooptimize,-absolute_forbid,-symbol_forbid,-section_forbid,-compress,-nocompress,-rename,-lib_rename,-delete,-define,-fsymbol,-stack,-memory,-msg_unused,

-show={all|symbol|reference|xreference|total_size|struct|relocation_attribute|cfi},

-aligned_section,-overrun_fetch,-cfi,-cfi_add_func,-cfi_ignore_module

Relocate

-extractあり

ライブラリ・ファイル

-library,-output

上記以外

オブジェクト・ファイル

リロケータブル・ファイル

バイナリ・ファイル

ライブラリ・ファイル

-input,-library,-binary,-debug,-nodebug,-output,-hide,-rename,-lib_rename,-delete,-show={all|symbol|xreference|total_size}

Object

-extractあり

ライブラリ・ファイル

-library,-output

Hexadecimal

Stype

Binary

オブジェクト・ファイル

リロケータブル・ファイル

バイナリ・ファイル

ライブラリ・ファイル

-input,-library,-binary,-cpu,-start,-rom,-entry,-output,-map,-space,-optimize/-nooptimize,-absolute_forbid,-symbol_forbid,-section_forbid,-rename,-lib_rename,-delete,-define,-fsymbol,-stack,-record注2,-end_record注2,-s9注2,-byte_count注3,-fix_record_length_and_align注7,-padding,-memory,-msg_unused,

-show={all|symbol|reference|xreference|total_size|struct|relocation_attribute|cfi},

-aligned_section,-overrun_fetch注4,-crc,-cfi,-cfi_add_func,-cfi_ignore_module

ロード・モジュール・ファイル

-input,-output,-record注2,-end_record注2,-s9注2,-byte_count注3,-fix_record_length_and_align注7,-show={all|symbol|reference|xreference}, -crc

インテル拡張ヘキサ・ファイル注5

-input,-output

モトローラ・Sタイプ・ファイル注5

-input,-output,-s9注2

Library

-stripあり

ライブラリ・ファイル

-library,-output,-memory注6,-show

-extractあり

ライブラリ・ファイル

-library,-output

上記以外

オブジェクト・ファイル

リロケータブル・ファイル

-input,-library,-output,-hide,-rename,-delete,-replace,-memory注6,-show={all|symbol|section}

注 1.

以下のオプションは,常に指定可能です。
-message,-nomessage,-change_message,-logo,-nologo,-form,-list,-subcommand

注 2.

-form=stypeオプションを指定した場合のみ指定可能です。

注 3.

-byte_countオプションは,-form= hexadecimal,または-form=stypeオプションを指定した場合のみ指定可能です。

注 4.

-overrun_fetchオプションは,-form=hexadecimal,または-form=stypeオプションを指定した場合のみ指定可能です。

注 5.

入力ファイルにインテル拡張ヘキサ・ファイルを指定した場合は-form=hexadecimalオプション,モトローラ・Sタイプ・ファイルを指定した場合は-form=stypeオプションのみを指定することができます。

注 6.

-hideオプションを指定した場合は指定することはできません。

注 7.

-fix_record_length_and_align オプションは,-form=hexadecimal,または-form=stypeオプションを指定した場合のみ指定可能です。

[使用例]

-

a.obj,b.objからリロケータブル・ファイルc.relを出力します。

>rlink a.obj b.obj -form=relocate -output=c.rel

-

lib.libからモジュールaを取り出し,オブジェクト・ファイルとして出力します。

>rlink -library=lib.lib -extract=a -form=object

-

lib.libからモジュールaを取り出し,ライブラリ・ファイルexta.libを出力します。

>rlink -library=lib.lib -extract=a -form=library -output=exta

-

lib.libからモジュールaを取り出し,リロケータブル・ファイルa.relを出力します。

>rlink -library=lib.lib -extract=a -form=relocate