Everything

-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.9

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

出力形式

指定オプション

入力可能なファイル形式

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

Absolute

-stripあり

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

-input,-output

上記以外

オブジェクト・ファイル

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

バイナリ・ファイル

ライブラリ・ファイル

-input,-library,-binary,-debug,-nodebug,-cpu,

-start,-rom,-entry,-output,-hide,-optimize,

-nooptimize,-symbol_forbid,-section_forbid,

-absolute_forbid,-compress,-nocompress,-rename,

-lib_rename,-delete,-define,-fsymbol,-stack,

-memory,-msg_unused,

-show={symbol|reference|xreference|total_size|vector|

struct|relocation_attribute|cfi|all},

-user_opt_byte,-ocdbg,-security_id,-device,

-padding,-vect,-vectn,-split_vect,-vfinfo,

-auto_section_layout,-debug_monitor,-rrm,-self,

-selfw,-ocdtr,-ocdtrw,-ocdhpi,-ocdhpiw,

-check_device,-check_64k_only,

-no_check_section_layout,-cfi,-cfi_add_func,

-cfi_ignore_module

Relocate

-extractあり

ライブラリ・ファイル

-library,-output

上記以外

オブジェクト・ファイル

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

バイナリ・ファイル

ライブラリ・ファイル

-input,-library,-debug,-nodebug,-output,-hide,

-rename,-lib_rename,-delete,

-show={symbol|xreference|total_size|all},

-device,-check_device

Object

-extractあり

ライブラリ・ファイル

-library,-output

Hexadecimal

Stype

Binary

オブジェクト・ファイル

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

バイナリ・ファイル

ライブラリ・ファイル

-input,-library,-binary,-cpu,-start,-rom,-entry,

-output,-space,-optimize,-nooptimize,

-symbol_forbid,-section_forbid,-absolute_forbid,

-rename,-lib_rename,-delete,-define,-fsymbol,

-stack,-record,-end_record注2,-s9注2

-byte_count注3,-fix_record_length_and_align注6

-memory,-msg_unused,

-show={symbol|reference|xreference|total_size|vector|

struct|relocation_attribute|cfi|all},

-user_opt_byte,-ocdbg,-security_id,-crc,-device,

-padding,-vect,-vectn,-split_vect,-vfinfo,

-auto_section_layout,-debug_monitor,-rrm,-self,

-selfw,-ocdtr,-ocdtrw,-ocdhpi,-ocdhpiw,

-check_device,-check_64k_only,

-no_check_section_layout,

-check_output_rom_area注7,-cfi,-cfi_add_func,

-cfi_ignore_module

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

-input,-output,-record,-end_record注2,-s9注2

-byte_count注3,-fix_record_length_and_align注6

-show={symbol|reference|xreference|all},

-device,-check_output_rom_area注7

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

-input,-output

-device,-check_output_rom_area注7

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

-input,-output,-s9注2

-device,-check_output_rom_area注7

Library

-stripあり

ライブラリ・ファイル

-library,-output,-memory注5

-extractあり

ライブラリ・ファイル

-library,-output

上記以外

オブジェクト・ファイル

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

-input,-library,-output,-hide,-rename,-delete,

-replace,-memory注5,-show={symbol|section|all},

-allow_duplicate_module_name

注 1.

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

注 2.

-end_recordおよび-s9オプションは,-form=stypeオプションを指定した場合のみ指定可能です。

注 3.

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

注 4.

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

注 5.

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

注 6.

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

注 7.

-check_output_rom_areaオプションは,-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