Everything
 

-lib_rename 【V3.01.00以降】


最適化リンケージエディタ(rlink)・オプション / その他オプション

[指定形式]

-lib_rename = <名前1>=<名前2>[,…]
-lib_rename = <ファイル>(<名前1>=<名前2>[,…])
-lib_rename = "<ファイル>|<モジュール>[|<モジュール>…](<名前1>=<名前2>[,…])"

 

[詳細説明]

-

-libraryオプションで指定したライブラリ内モジュールに含まれる外部シンボル名、セクション名を変更します。

-

<名前1>には変更対象のシンボル名、またはセクション名、<名前2>には変更後のシンボル名、またはセクション名を指定します。

-

C変数名を指定する場合は、プログラム中での定義名の先頭に"_"を付加します。

-

指定した名前がセクション、シンボルの両方に存在した場合、シンボル名を優先します。

-

同一のファイル名、モジュール名が複数存在する場合は、先に入力した方を優先します。

-

本オプションを複数回指定した場合、すべての指定が有効になります。

-

次の場合はエラーとなります。

-

指定した<名前>、<ファイル>、<モジュール>がみつからない場合。

-

パラメータを省略した場合。

[例]

-

b.lib及びc.libにある_sym1を_dataに変更します。

> rlink a.obj -lib=b.lib,c.lib  -lib_rename=(_sym1=_data)

-

b.libにある全てのモジュール内の_sym1を_dataに変更します。

> rlink a.obj -lib=b.lib,c.lib  -lib_rename=b.lib(_sym1=_data)

-

b.libにあるモジュールm1及びm2内の_sym1を_dataに変更します。

> rlink a.obj -lib=b.lib,c.lib  -lib_rename="b.lib|m1|m2(_sym1=_data)"

[備考]

-

本オプションは、-form={object,library}オプション、-extract オプション、または -strip オプションと同時に指定した場合はエラーとなります。

-

-form={absolute|hexadecimal|stype|binary} オプションを指定した場合は、-show=structオプションを同時に指定できません。また、入力されたライブラリのセクション名を変更することはできません。

-

コンパイル・オプション -merge_files と本オプションを組み合わせて使用した場合、動作は保証されません。