Man page - ld(1)

Packages contains this manual

Available languages:

en ja zh_TW zh_CN

Manual

ld

名 前
書 式
説 明
オ プ シ ョ ン
環 境 変 数
関 連 項 目
著 作 権

名 前

ld - GNU リ ン カ

書 式

ld

[ -o output ] objfile ...

[ -A architecture ] [ -b input-format ] [ -Bstatic ] [ -Bdynamic ] [ -Bsymbolic ] [ -c commandfile ] [ --cref ] [ -d | -dc | -dp ]
[ -defsym symbol = expression ] [ -e entry ] [ -embedded-relocs ] [ -E ] [ -export-dynamic ] [ -f name ] [ --auxiliary name ] [ -F name ] [ --filter name ] [ -format input-format ] [ -g ] [ -G size ] [ -h name ] [ -soname name ] [ --help ] [ -i ] [ -l ar ] [ -L searchdir ] [ -M ] [ -Map mapfile ] [ -m emulation ] [ -n | -N ] [ -noinhibit-exec ] [ -no-keep-memory ] [ -no-warn-mismatch ] [ -oformat output-format ] [ -R filename ] [ -relax ] [ -r | -Ur ] [ -rpath directory ] [ -rpath-link directory ] [ -S ] [ -s ] [ -shared ] [ -sort-common ] [ -split-by-reloc count ] [ -split-by-file ] [ -T commandfile ] [ -Ttext textorg ] [ -Tdata dataorg ] [ -Tbss bssorg ] [ -t ] [ -u sym ] [ -V ] [ -v ] [ --verbose ] [ --version ] [ -warn-common ] [ -warn-constructors ] [ -warn-multiple-gp ] [ -warn-once ] [ -warn-section-align ] [ --whole-archive ] [ --no-whole-archive ] [ --wrap symbol ] [ -X ] [ -x ]

説 明

ld は 複 数 の オ ブ ジ ェ ク ト フ ァ イ ル や 書 庫 (archive) フ ァ イ ル を 結 合 し 、 そ れ ら の デ ー タ を リ ロ ケ ー ト し て 、 シ ン ボ ル の 参 照 を ま と め る 。 新 た な 実 行 プ ロ グ ラ ム を コ ン パ イ ル し て 作 成 す る 作 業 の 最 終 ス テ ッ プ は 、 多 く の 場 合 ld の 呼 び 出 し と な る 。

ld は リ ン カ コ マ ン ド 言 語 の フ ァ イ ル を 受 け 付 け る 。 こ の フ ァ イ ル で リ ン ク 処 理 を 明 示 的 に 、 ま た 完 全 に 制 御 す る こ と が で き る 。 こ の man ペ ー ジ で は コ マ ン ド 言 語 を 説 明 し て い な い 。 コ マ ン ド 言 語 や GNU リ ン カ の そ の 他 の 内 容 に 関 す る 詳 細 は info の ‘ ld ’ エ ン ト リ か 、 マ ニ ュ ア ル で あ る ld: the GNU linker を 参 照 す る こ と 。

ld の 本 バ ー ジ ョ ン で は オ ブ ジ ェ ク ト フ ァ イ ル 関 連 の 作 業 に 汎 用 の BFD ラ イ ブ ラ リ を 用 い て い る 。 こ れ に よ っ て ld で は 多 く の 異 な る フ ォ ー マ ッ ト の オ ブ ジ ェ ク ト フ ァ イ ル を 読 み 、 書 き 、 結 合 す る こ と が で き る よ う に な っ て い る ( 例 え ば COFF や a.out )。 異 な る フ ォ ー マ ッ ト を リ ン ク し て 、 あ ら ゆ る 種 類 の オ ブ ジ ェ ク ト フ ァ イ ル を 作 成 で き る 。 サ ポ ー ト さ れ て い る フ ォ ー マ ッ ト や 関 連 す る ア ー キ テ ク チ ャ に 関 し て は ‘ objdump -i ’ を 実 行 す れ ば よ い 。 詳 細 は objdump ( 1 ) を 見 よ 。

GNU リ ン カ は 柔 軟 で あ る だ け で な く 、 診 断 (diagnostic) メ ッ セ ー ジ も 他 の リ ン カ よ り 詳 し い 。 多 く の リ ン カ は エ ラ ー が 生 じ る と す ぐ に 動 作 を 停 止 し て し ま う が 、 ld は 可 能 な 限 り 処 理 を 続 け 、 他 の エ ラ ー に 関 し て も 知 ら せ よ う と す る (あ る い は エ ラ ー に も か か わ ら ず 出 力 フ ァ イ ル を 作 成 し て し ま う こ と さ え あ る )。

GNU リ ン カ ld は 多 く の 状 況 を カ バ ー す る よ う に 作 成 さ れ て い る 。 ま た 他 の リ ン カ と で き る 限 り 互 換 性 を 保 つ よ う に し て あ る 。 し た が っ て ld の 振 る 舞 い は 、 コ マ ン ド ラ イ ン や 環 境 変 数 に よ っ て 細 か く 制 御 で き る よ う に な っ て い る 。

オ プ シ ョ ン

コ マ ン ド ラ イ ン オ プ シ ョ ン の あ ま り の 多 さ に 怖 気 づ く か も し れ な い が 、 実 際 の 作 業 で 指 定 さ れ る オ プ シ ョ ン は 、 ほ と ん ど の 場 合 少 な い 。 例 と し て ld の 良 く 用 い ら れ る 例 、 サ ポ ー ト さ れ て い る 標 準 的 な Unix シ ス テ ム で 標 準 Unix の オ ブ ジ ェ ク ト フ ァ イ ル を 作 成 す る 場 合 を 考 え よ う 。 こ の よ う な シ ス テ ム で hello.o フ ァ イ ル を リ ン ク す る 作 業 は 以 下 の よ う に な る 。

$ ld -o output /lib/crt0.o hello.o -lc

こ の 例 で は ld output と い う 名 前 の フ ァ イ ル を 作 成 す る よ う に 命 令 し て い る 。 リ ン ク す る フ ァ イ ル は /lib/crt0.o hello.o お よ び 標 準 的 な 検 索 デ ィ レ ク ト リ に あ る ラ イ ブ ラ リ libc.a で あ る 。

ld の コ マ ン ド ラ イ ン オ プ シ ョ ン は 任 意 の 順 序 で 指 定 で き 、 必 要 な だ け 繰 り 返 す こ と が で き る 。 オ プ シ ョ ン の 繰 り 返 し は 、 多 く の 場 合 最 初 の も の 以 外 を 無 視 す る か 、 先 の 指 定 (コ マ ン ド ラ イ ン の 左 に あ る も の ) を 上 書 き す る か に な る 。

例 外 (複 数 回 の 指 定 が 意 味 を 持 つ も の ) は 以 下 の 通 り 。 -A -b (ま た は そ の 同 義 で あ る -format )、 -defsym -L -l -R -u

リ ン ク す る (複 数 の ) オ ブ ジ ェ ク ト フ ァ イ ル は objfile と し て 与 え る が 、 こ れ は コ マ ン ド ラ イ ン で オ プ シ ョ ン の 後 、 前 、 あ る い は 混 ぜ て 置 い て も 構 わ な い 。 た だ し objfie を オ プ シ ョ ン の フ ラ グ と そ の 引 数 の 間 に 置 く こ と は で き な い 。

通 常 リ ン カ の 実 行 に は 最 低 一 つ の オ ブ ジ ェ ク ト フ ァ イ ル が 指 定 さ れ る が 、 異 な る フ ォ ー マ ッ ト を 持 つ バ イ ナ リ フ ァ イ ル を -l -R や ス ク リ プ ト コ マ ン ド 言 語 で 指 定 す る こ と も で き る 。 バ イ ナ リ の 入 力 フ ァ イ ル が 一 つ も 指 定 さ れ な い 場 合 に は 、 リ ン カ は 出 力 フ ァ イ ル を 作 成 せ ず 、 ‘ No input files ’ と い う メ ッ セ ー ジ を 表 示 す る 。

オ プ シ ョ ン の 引 数 は オ プ シ ョ ン 文 字 の 直 後 に ス ペ ー ス な し で 続 け る こ と も で き る し 、 オ プ シ ョ ン の 次 に 別 の 引 数 と し て 置 く こ と も で き る 。
-A
architecture

ld の こ の リ リ ー ス で は 、 こ の オ プ シ ョ ン は Intel 960 ア ー キ テ ク チ ャ の フ ァ ミ リ に 対 し て の み 意 味 を 持 つ 。 こ の フ ァ ミ リ 向 け に 設 定 さ れ た ld で は 、 architecture 引 数 は 960 フ ァ ミ リ の メ ン バ ー を 示 す 2 文 字 の 名 前 の ど れ か を 指 定 す る 。 こ の オ プ シ ョ ン は 出 力 タ ー ゲ ッ ト を 指 定 し 、 入 力 フ ァ イ ル に あ る 非 互 換 な 命 令 全 て に 対 し て 警 告 メ ッ セ ー ジ を 表 示 す る 。 ま た リ ン カ が 書 庫 ラ イ ブ ラ リ を 検 索 す る 方 法 を 変 更 し 、 指 定 さ れ た ア ー キ テ ク チ ャ に 特 有 の ラ イ ブ ラ リ が 利 用 で き る よ う に す る 。 こ れ は 検 索 す る フ ァ イ ル に 、 ア ー キ テ ク チ ャ を 示 す 文 字 列 を 後 置 し た も の を 加 え る こ と に よ っ て な さ れ る 。

例 え ば 使 用 し て い る ld の コ マ ン ド ラ イ ン に -ACA ま た は -ltry が あ れ ば 、 リ ン カ は 組 み 込 み の 検 索 パ ス と -L で 指 定 さ れ た パ ス を 探 し 、 以 下 の よ う な 名 前 の ラ イ ブ ラ リ を 見 つ け よ う と す る 。

try
libtry.a
tryca
libtryca.a

最 初 の 二 つ は ど ん な 場 合 で も 検 索 さ れ る も の で あ り 、 後 の 二 つ は -ACA を 用 い た こ と に よ っ て 加 わ っ た も の で あ る 。

ld の 将 来 の リ リ ー ス で は 、 同 じ よ う な 機 能 が 他 の ア ー キ テ ク チ ャ フ ァ ミ リ で も サ ポ ー ト さ れ る 可 能 性 が あ る 。

-A オ プ シ ョ ン は コ マ ン ド ラ イ ン で 複 数 回 用 い ら れ る と 、 そ れ ぞ れ が 意 味 を 持 つ 。 た だ し ア ー キ テ ク チ ャ フ ァ ミ リ が タ ー ゲ ッ ト の 組 み 合 わ せ を 許 す 場 合 に 限 ら れ る 。 そ れ ぞ れ の 指 定 に よ っ て 、 -l で 指 定 さ れ た ラ イ ブ ラ リ に 名 前 の バ リ エ ー シ ョ ン を 付 け た も の が 検 索 さ れ る 。

-b input-format

コ マ ン ド ラ イ ン で こ の オ プ シ ョ ン に 続 い て 指 定 さ れ た 入 力 オ ブ ジ ェ ク ト フ ァ イ ル の バ イ ナ リ フ ォ ー マ ッ ト を 指 定 す る 。 通 常 こ の 指 定 は 必 要 な い 。 ld は そ れ ぞ れ の マ シ ン で 最 も 一 般 的 な フ ォ ー マ ッ ト を デ フ ォ ル ト の 入 力 フ ォ ー マ ッ ト と す る よ う に 設 定 さ れ て い る か ら で あ る 。 input-format は テ キ ス ト 文 字 列 で 、 BFD ラ イ ブ ラ リ に よ っ て サ ポ ー ト さ れ て い る 特 定 の フ ォ ー マ ッ ト の 名 前 で あ る 。 -format input-format は ス ク リ プ ト コ マ ン ド TARGET と 同 じ 効 力 を 持 つ 。

一 般 的 な バ イ ナ リ フ ォ ー マ ッ ト で は な い フ ァ イ ル を リ ン ク す る 場 合 に 、 こ の オ プ シ ョ ン を 指 定 す る こ と に な る 。 ま た 異 な る フ ォ ー マ ッ ト の オ ブ ジ ェ ク ト フ ァ イ ル を リ ン ク す る 際 に 、 フ ォ ー マ ッ ト を 明 示 的 に 変 更 す る 目 的 に -b を 使 う こ と も で き る 。 こ の 際 に は -b input-foramt を そ れ ぞ れ の フ ォ ー マ ッ ト に 属 す る オ ブ ジ ェ ク ト フ ァ イ ル 群 の 前 に 挿 入 す る 。

デ フ ォ ル ト の フ ォ ー マ ッ ト は 環 境 変 数 GNUTARGET か ら 取 得 さ れ る 。 ス ク リ プ ト で コ マ ン ド TARGET を 用 い て 入 力 フ ォ ー マ ッ ト を 設 定 す る こ と も で き る 。

-Bstatic

共 有 ラ イ ブ ラ リ に 対 す る リ ン ク を し な い 。 こ れ は 共 有 ラ イ ブ ラ リ を サ ポ ー ト し て い る プ ラ ッ ト フ ォ ー ム に お い て の み 意 味 を 持 つ 。

-Bdynamic

動 的 ラ イ ブ ラ リ に 対 し て リ ン ク す る 。 こ れ は 共 有 ラ イ ブ ラ リ を サ ポ ー ト し て い る プ ラ ッ ト フ ォ ー ム に お い て の み 意 味 を 持 つ 。 そ の よ う な プ ラ ッ ト フ ォ ー ム で は こ の オ プ シ ョ ン は 通 常 デ フ ォ ル ト に な っ て い る 。

-Bsymbolic

共 有 ラ イ ブ ラ リ を 作 る 場 合 、 グ ロ ー バ ル シ ン ボ ル へ の 参 照 を 共 有 ラ イ ブ ラ リ 内 部 の 定 義 (definition) と 結 合 す る 。 共 有 ラ イ ブ ラ リ に リ ン ク さ れ る プ ロ グ ラ ム で は 、 通 常 こ の 共 有 ラ イ ブ ラ リ 内 部 の 定 義 を 上 書 き す る こ と が で き る 。 こ の オ プ シ ョ ン が 意 味 を 持 つ の は 共 有 ラ イ ブ ラ リ を サ ポ ー ト す る ELF プ ラ ッ ト フ ォ ー ム の み で あ る 。

-c commandfile

commandfile か ら リ ン ク コ マ ン ド を 読 む よ う に ld に 指 示 す る 。 こ れ ら の コ マ ン ド は ld デ フ ォ ル ト の リ ン ク フ ォ ー マ ッ ト を 完 全 に 上 書 き す る (デ フ ォ ル ト に 追 加 さ れ る わ け で は な い )。 commandfile で は タ ー ゲ ッ ト フ ォ ー マ ッ ト に 関 し て 必 要 な 記 述 が す べ て さ れ て い な け れ ば な ら な い 。

リ ン ク コ マ ン ド の ス ク リ プ ト は 、 コ マ ン ド ラ イ ン で も 指 定 で き る 。 こ れ に は ス ク リ プ ト の 文 字 列 を ブ ラ ケ ッ ト (‘ { ’ と ‘ } ’) で 囲 う 。

--cref

ク ロ ス リ フ ァ レ ン ス の テ ー ブ ル を 出 力 す る 。 リ ン カ の マ ッ プ フ ァ イ ル が 生 成 さ れ る 場 合 に は 、 ク ロ ス リ フ ァ レ ン ス テ ー ブ ル は マ ッ プ フ ァ イ ル に 出 力 さ れ る 。 そ れ 以 外 の 場 合 に は 標 準 出 力 に 表 示 さ れ る 。

-d

-dc

-dp

こ れ ら の 3 つ の オ プ シ ョ ン は 等 価 で あ る 。 複 数 の 形 式 が あ る の は 他 の リ ン カ と の 互 換 性 の た め で あ る 。 こ れ ら の い ず れ か を 指 定 す る と 、 ld は リ ロ ケ ー タ ブ ル 出 力 フ ァ イ ル が 指 定 ( -r ) さ れ た 場 合 で も 共 通 シ ン ボ ル の た め の 領 域 を 割 り 当 て る 。 ス ク リ プ ト コ マ ン ド FORCE_COMMON_ALLOCATION が 同 じ 効 力 を 持 つ 。

-defsym symbol = expression

expression に よ っ て 与 え ら れ た 絶 対 ア ド レ ス を 含 む グ ロ ー バ ル シ ン ボ ル を 出 力 フ ァ イ ル に 生 成 す る 。 こ の オ プ シ ョ ン は 必 要 な だ け コ マ ン ド ラ イ ン に 指 定 で き 、 複 数 の シ ン ボ ル を 定 義 す る こ と が で き る 。 expression の 指 定 に は 簡 単 な 算 術 も サ ポ ー ト さ れ て い る 。 16 進 定 数 や 存 在 す る 他 の シ ン ボ ル を 与 え た り 、 + - を そ れ ら の 間 の 足 し 引 き に 用 い る こ と も で き る 。 よ り 手 の 込 ん だ 数 式 が 必 要 な 場 合 に は 、 ス ク リ プ ト で リ ン カ コ マ ン ド 言 語 を 用 い る こ と を す す め る 。

-e entryentry

を プ ロ グ ラ ム の エ ン ト リ ポ イ ン ト を 示 す シ ン ボ ル と し て 取 り 扱 う (デ フ ォ ル ト の エ ン ト リ ポ イ ン ト を 上 書 き す る )。 デ フ ォ ル ト と 他 の エ ン ト リ ポ イ ン ト の 指 定 方 法 に つ い て は ld の info の *Note Entry Point:: を 参 照 す る こ と 。

-embedded-relocs

こ の オ プ シ ョ ン が 意 味 を 持 つ の は GNU コ ン パ イ ラ や ア セ ン ブ ラ の -membedded-pic オ プ シ ョ ン に よ っ て 生 成 さ れ た MIPS embedded な PIC コ ー ド を リ ン ク す る 場 合 だ け で あ る 。 こ れ は リ ン カ に テ ー ブ ル を 生 成 さ せ る 。 こ の テ ー ブ ル は 、 ポ イ ン タ 値 に 対 し て static に 初 期 化 さ れ た 全 て の デ ー タ を 実 行 時 に リ ロ ケ ー ト す る 際 に 用 い ら れ る 。 詳 細 は testsuite/ld-empic 内 部 の コ ー ド を 参 照 の こ と 。

-E

-export-dynamic

ELF フ ァ イ ル を 作 成 す る 際 に 、 全 て の シ ン ボ ル を ダ イ ナ ミ ッ ク な シ ン ボ ル テ ー ブ ル に 追 加 す る 。 通 常 ダ イ ナ ミ ッ ク シ ン ボ ル テ ー ブ ル に は 動 的 な オ ブ ジ ェ ク ト に よ っ て 用 い ら れ る シ ン ボ ル の み が 含 ま れ て い る 。 こ の オ プ シ ョ ン は dlopen を 使 う 場 合 な ど に 必 要 と な る 。

-f name
--auxiliary
name

ELF 共 有 オ ブ ジ ェ ク ト を 作 成 す る 際 に 、 内 部 の DT_AUXILIARY フ ィ ー ル ド を 指 定 し た 名 前 に 設 定 す る 。 こ の 指 定 に よ っ て 、 ダ イ ナ ミ ッ ク リ ン カ は 扱 っ て い る 共 有 オ ブ ジ ェ ク ト の シ ン ボ ル テ ー ブ ル を 、 他 の 共 有 オ ブ ジ ェ ク ト name の シ ン ボ ル テ ー ブ ル の 補 助 フ ィ ル タ と し て 用 い る よ う に な る 。

-F name
--filter
name

ELF 共 有 オ ブ ジ ェ ク ト を 作 成 す る 際 に 、 内 部 の DT_FILTER フ ィ ー ル ド を 指 定 し た 名 前 に 設 定 す る 。 こ の 指 定 に よ っ て 、 ダ イ ナ ミ ッ ク リ ン カ は そ の 共 有 オ ブ ジ ェ ク ト の シ ン ボ ル テ ー ブ ル を 、 他 の 共 有 オ ブ ジ ェ ク ト name の シ ン ボ ル テ ー ブ ル の フ ィ ル タ と し て 用 い る よ う に な る 。

-format input-format

-b input-format と 同 義 。

-g

受 け 付 け る が 無 視 さ れ る 。 他 の ツ ー ル と の 互 換 性 の た め に 用 意 さ れ て い る 。

-G size MIPS ECOFF に お い て 、 GP
レ ジ ス タ を 用 い て 最 適 化 す る オ ブ ジ ェ ク ト の 最 大

サ イ ズ を size に 設 定 す る 。 他 の オ ブ ジ ェ ク ト フ ァ イ ル フ ォ ー マ ッ ト で は 無 視 さ れ る 。

-h name
-soname
name

ELF 共 有 オ ブ ジ ェ ク ト を 作 成 す る と き 、 内 部 の DT_SONAME フ ィ ー ル ド を 指 定 し た 名 前 に 設 定 す る 。 実 行 フ ァ イ ル が DT_SONAME フ ィ ー ル ド を 持 つ 共 有 オ ブ ジ ェ ク ト と リ ン ク さ れ る と 、 こ れ の 実 行 時 に ダ イ ナ ミ ッ ク リ ン カ は DT_SONAME に よ っ て 指 定 さ れ た 共 有 オ ブ ジ ェ ク ト を ロ ー ド し よ う と す る (通 常 は リ ン カ に 対 し て 指 定 さ れ た フ ァ イ ル を ロ ー ド す る )。

--help

コ マ ン ド ラ イ ン オ プ シ ョ ン の 要 約 を 標 準 出 力 に 表 示 し て 終 了 す る 。 こ の オ プ シ ョ ン と --version は 、 他 の GNU プ ロ グ ラ ム と の 互 換 性 の た め ダ ッ シ ュ (-) 二 つ で 始 ま る 。 こ れ 以 外 の オ プ シ ョ ン は 他 の リ ン カ と の 互 換 性 の た め ダ ッ シ ュ 一 つ で 始 ま る 。

-i

イ ン ク リ メ ン タ ル リ ン ク を 実 行 す る (オ プ シ ョ ン -r と 同 じ )。

-l ar ア ー カ イ ブ フ ァ イ ル

ar を リ ン ク す る フ ァ イ ル の リ ス ト に 加 え る 。 こ の オ プ シ ョ ン は 何 回 で も 指 定 で き る 。 ld ar が 指 定 さ れ る ご と に 、 lib ar .a が 見 つ か る ま で 検 索 パ ス を 探 す 。

-L searchdir

こ の コ マ ン ド は searchdir ld の 書 庫 ラ イ ブ ラ リ の 検 索 パ ス に 追 加 す る 。 こ の オ プ シ ョ ン は 必 要 な だ け 指 定 で き る 。

デ フ ォ ル ト の 検 索 パ ス ( -L が 指 定 さ れ な か っ た と き の 検 索 パ ス ) は ld が 用 い て い る エ ミ ュ レ ー シ ョ ン の モ ー ド に 依 存 す る 。 ま た 設 定 に 依 存 す る 場 合 も あ る 。 リ ン ク ス ク リ プ ト で は SEARCH_DIR コ マ ン ド を 用 い て こ の パ ス を 設 定 す る こ と も で き る 。

-M

標 準 出 力 に リ ン ク マ ッ プ を 表 示 す る 。 リ ン ク マ ッ プ に は ld に よ っ て マ ッ プ さ れ た シ ン ボ ル の 位 置 情 報 と グ ロ ー バ ル な 共 通 メ モ リ 領 域 の 割 当 て 情 報 が 含 ま れ て い る 。

-Map mapfile フ ァ イ ル

mapfile に リ ン ク マ ッ プ を 出 力 す る 。 リ ン ク マ ッ プ に は ld に よ っ て マ ッ プ さ れ た シ ン ボ ル の 位 置 情 報 と グ ロ ー バ ル な 共 通 storage の 割 当 て 情 報 が 含 ま れ て い る 。

-m emulation リ ン カ

emulation を エ ミ ュ レ ー ト す る 。 エ ミ ュ レ ー ト で き る も の の リ ス ト は --verbose ま た は -V で 得 ら れ る 。 こ の オ プ シ ョ ン は コ ン パ イ ル 時 の デ フ ォ ル ト ( ld の 設 定 を 行 っ た シ ス テ ム 向 け の リ ン カ ) を 上 書 き す る 。

-N

text data セ ク シ ョ ン を 読 み 書 き 可 能 に す る 。 出 力 フ ォ ー マ ッ ト が Unix ス タ イ ル の マ ジ ッ ク ・ ナ ン バ ー を サ ポ ー ト し て い る 場 合 は 、 出 力 フ ァ イ ル に OMAGIC が マ ー ク さ れ る 。

-N オ プ シ ョ ン を 指 定 す る と リ ン カ は data セ グ メ ン ト の ペ ー ジ 位 置 調 整 を 行 わ な い 。

-n

text セ グ メ ン ト を リ ー ド オ ン リ ー に す る 。 可 能 な 場 合 は NMAGIC が 書 き 込 ま れ る 。

-noinhibit-exec

通 常 リ ン カ は リ ン ク 処 理 の 途 中 で エ ラ ー に な る と 出 力 フ ァ イ ル を 生 成 し な い 。 こ の フ ラ グ を も ち い る と 致 命 的 で な い エ ラ ー の 場 合 に は 出 力 フ ァ イ ル を 残 す よ う に 指 定 で き る 。

-no-keep-memory

通 常 リ ン カ は メ モ リ 消 費 量 よ り も 実 行 速 度 を 優 先 す る よ う に 最 適 化 さ れ て い る 。 す な わ ち 入 力 フ ァ イ ル の シ ン ボ ル テ ー ブ ル が メ モ リ に キ ャ ッ シ ュ さ れ て い る 。 こ の オ プ シ ョ ン を 指 定 す る と 、 メ モ リ 消 費 を 抑 え る よ う に な る (必 要 に 応 じ て シ ン ボ ル テ ー ブ ル を 読 み 直 す )。 こ の オ プ シ ョ ン は 大 き な 実 行 フ ァ イ ル を リ ン ク す る と き 、 メ モ リ を 使 い 果 た し て し ま う よ う な 場 合 に 指 定 す る 必 要 が あ る 。

-no-warn-mismatch

何 ら か の 理 由 で マ ッ チ し な い 入 力 フ ァ イ ル を い っ し ょ に リ ン ク し よ う と す る と 、 リ ン カ は 通 常 エ ラ ー に な り ま す 。 こ の 原 因 と し て は 、 そ れ ら の 入 力 フ ァ イ ル が 異 な る プ ロ セ ッ サ 用 に 、 あ る い は 異 な る エ ン デ ィ ア ン 用 に コ ン パ イ ル さ れ た な ど が 考 え ら れ ま す 。 こ の オ プ シ ョ ン を 指 定 す る と 、 リ ン カ は こ の 種 の 潜 在 的 な エ ラ ー を 黙 っ て 許 可 し ま す 。 こ の オ プ シ ョ ン は 不 用 意 に 使 う べ き で は あ り ま せ ん 。 リ ン カ の エ ラ ー を ど う し て も 避 け た い よ う な 、 特 殊 な 作 業 を 行 っ て い る と き に 限 る べ き で す 。

-o output

output ld に よ っ て 作 成 さ れ る プ ロ グ ラ ム の 名 前 で あ る 。 こ の オ プ シ ョ ン が 指 定 さ れ な か っ た 場 合 は a.out が デ フ ォ ル ト と し て 用 い ら れ る 。 ス ク リ プ ト コ マ ン ド OUTPUT で も 出 力 フ ァ イ ル 名 を 指 定 で き る 。

-oformat output-format

出 力 さ れ る オ ブ ジ ェ ク ト フ ァ イ ル の バ イ ナ リ フ ォ ー マ ッ ト を 指 定 す る 。 通 常 は こ の オ プ シ ョ ン は 必 要 な い 。 ld で の デ フ ォ ル ト の 出 力 フ ォ ー マ ッ ト は 、 そ れ ぞ れ の マ シ ン で 最 も 普 通 の フ ォ ー マ ッ ト に な る よ う に 設 定 さ れ て い る か ら で あ る 。 output-format は テ キ ス ト 文 字 列 で 、 BFD ラ イ ブ ラ リ で サ ポ ー ト さ れ て い る 特 定 の フ ォ ー マ ッ ト の 名 前 で あ る 。 ス ク リ プ ト コ マ ン ド OUTPUT_FORMAT で も 出 力 フ ォ ー マ ッ ト を 指 定 で き る 。 し か し こ の オ プ シ ョ ン は ス ク リ プ ト で の 指 定 を 上 書 き す る 。

-R filename

シ ン ボ ル 名 と そ れ ら の ア ド レ ス を filename か ら 読 み 込 む 。 し か し そ れ ら の リ ロ ケ ー ト や 出 力 へ の 追 加 は 行 わ な い 。 こ れ に よ っ て 出 力 フ ァ イ ル で は 、 (他 の プ ロ グ ラ ム で 定 義 さ れ た ) メ モ リ 上 の 絶 対 ア ド レ ス を シ ン ボ ル を 用 い て 参 照 で き る こ と に な る 。

-relax

機 能 は マ シ ン に 依 存 す る 。 現 在 で は H8/300 で の み サ ポ ー ト さ れ て い る 。

プ ラ ッ ト フ ォ ー ム に よ っ て は 、 こ の オ プ シ ョ ン を 指 定 す る と グ ロ ー バ ル な 最 適 化 を 行 う 場 合 も あ る 。 こ れ は リ ン カ が プ ロ グ ラ ム の ア ド レ ス を 置 き 換 え る (出 力 さ れ る オ ブ ジ ェ ク ト フ ァ イ ル の ア ド レ ス モ ー ド を relax さ せ た り 新 し い 命 令 を 同 期 さ せ る ) 場 合 に 可 能 と な る 。

サ ポ ー ト さ れ て い な い プ ラ ッ ト フ ォ ー ム で は 、 -relax は 受 け 付 け ら れ る が 何 も 起 こ ら な い 。

-r

リ ロ ケ ー タ ブ ル な 出 力 を 生 成 す る 。 す な わ ち 再 び ld の 入 力 と し て 用 い る こ と が で き る よ う な フ ァ イ ル を 生 成 す る 。 こ れ は し ば し ば 部 分 ( partial ) リ ン ク と 呼 ば れ る 。 ま た 標 準 Unix の マ ジ ッ ク ・ ナ ン バ ー を サ ポ ー ト す る 環 境 で は 、 こ の オ プ シ ョ ン は 出 力 フ ァ イ ル の マ ジ ッ ク ・ ナ ン バ ー を OMAGIC に す る 。 こ の オ プ シ ョ ン が 指 定 さ れ な か っ た 場 合 は 、 完 全 な フ ァ イ ル が 生 成 さ れ る 。 C++ プ ロ グ ラ ム を リ ン ク す る 場 合 、 こ の オ プ シ ョ ン は コ ン ス ト ラ ク タ へ の 参 照 を 解 決 し な い 。 C++ の 場 合 に は 代 わ り に -Ur を 用 い る こ と が で き る 。

こ の オ プ シ ョ ン は -i と 同 じ 。

-rpath directory

デ ィ レ ク ト リ を 実 行 時 ラ イ ブ ラ リ の 検 索 パ ス に 追 加 す る 。 こ れ は ELF の 実 行 フ ァ イ ル を 共 有 オ ブ ジ ェ ク ト と リ ン ク す る と き に 用 い ら れ る 。 -rpath の 引 き 数 は 全 て 結 合 さ れ 、 ダ イ ナ ミ ッ ク リ ン カ に 渡 さ れ る 。 ダ イ ナ ミ ッ ク リ ン カ は 、 こ れ を 用 い て ロ ー ド す る 共 有 オ ブ ジ ェ ク ト を 実 行 時 に 決 定 す る 。 -rpath オ プ シ ョ ン は リ ン ク に 明 示 的 に 含 ま れ て い る 共 有 オ ブ ジ ェ ク ト に よ っ て 必 要 と さ れ る 別 の 共 有 オ ブ ジ ェ ク ト を 指 定 す る の に 用 い る こ と も で き る 。 -rpath-link オ プ シ ョ ン の 説 明 を 見 よ 。 ELF 実 行 フ ァ イ ル の -rpath が 指 定 さ れ な い 場 合 に は 、 (指 定 さ れ て い れ ば ) 環 境 変 数 LD_RUN_PATH の 値 が 用 い ら れ る 。

-rpath オ プ シ ョ ン は SunOS で 用 い る こ と も で き る 。 SunOS の デ フ ォ ル ト で は 、 リ ン カ は 実 行 時 の 検 索 パ ス を -L オ プ シ ョ ン で 与 え ら れ た パ ス か ら 生 成 す る 。 -rpath が 用 い ら れ る と 、 実 行 時 の 検 索 パ ス は -rpath オ プ シ ョ ン で 与 え ら れ た パ ス の み か ら 生 成 さ れ 、 -L オ プ シ ョ ン は 無 視 さ れ る 。 こ れ は gcc を 使 っ て い て 、 -L が た く さ ん 指 定 さ れ て し ま う (こ れ ら は NFS マ ウ ン ト さ れ た フ ァ イ ル シ ス テ ム か も し れ な い ) 場 合 な ど に 便 利 で あ る 。

-rpath-link directory

ELF か SunOS を 用 い て い る 場 合 、 あ る 共 有 ラ イ ブ ラ リ が 別 の 共 有 ラ イ ブ ラ リ を 必 要 と す る 場 合 が あ る 。 こ れ は ld -shared に よ る リ ン ク で 入 力 フ ァ イ ル に 共 有 ラ イ ブ ラ リ が 含 ま れ て い る 場 合 に 起 こ る 。

リ ン カ が 非 共 有 (非 リ ロ ケ ー タ ブ ル ) な リ ン ク を 行 っ て い る と き に 、 こ の よ う な 依 存 関 係 に 遭 遇 す る と 、 リ ン カ は 自 動 的 に そ の 必 要 と さ れ て い る 共 有 ラ イ ブ ラ リ も (明 示 さ れ て い な く て も ) リ ン ク し て し ま お う と す る 。 こ の よ う な 場 合 に -rpath-link オ プ シ ョ ン は 検 索 す る 最 初 の デ ィ レ ク ト リ セ ッ ト を 指 定 す る 。 -rpath-link オ プ シ ョ ン で は デ ィ レ ク ト リ 名 の 並 び を コ ロ ン で 区 切 っ て 一 度 に 指 定 す る こ と も で き る し 、 複 数 回 用 い て 指 定 す る こ と も で き る 。

必 要 な 共 有 ラ イ ブ ラ リ が 見 つ か ら な い と 、 リ ン カ は 警 告 を 出 し て リ ン ク 処 理 を 継 続 し よ う と す る 。

-S

出 力 フ ァ イ ル か ら デ バ ッ ガ の シ ン ボ ル 情 報 を 削 除 す る (全 て の シ ン ボ ル で は な い )。

-s

出 力 フ ァ イ ル か ら 全 て の シ ン ボ ル 情 報 を 削 除 す る 。

-shared

共 有 ラ イ ブ ラ リ を 生 成 す る 。 現 在 の と こ ろ ELF と SunOS プ ラ ッ ト フ ォ ー ム で の み サ ポ ー ト さ れ て い る (実 際 に は SunOS で は 不 要 で あ る 。 な ぜ な ら リ ン カ は 未 定 義 シ ン ボ ル が 存 在 し て い た り -e オ プ シ ョ ン が 指 定 さ れ て い る 場 合 に は 自 動 的 に 共 有 ラ イ ブ ラ リ を 生 成 す る か ら で あ る )。

-sort-common

通 常 ld が グ ロ ー バ ル な 共 通 シ ン ボ ル を そ れ ぞ れ の 出 力 セ ク シ ョ ン に 配 置 す る に あ た っ て は 、 そ れ ら は サ イ ズ に よ っ て ソ ー ト さ れ る 。 ま ず 1 バ イ ト 変 数 の シ ン ボ ル 、 つ い で 2 バ イ ト 、 4 バ イ ト 変 数 の シ ン ボ ル 、 最 後 に そ れ 以 外 の も の が 並 ぶ 。 こ の オ プ シ ョ ン は ア ラ イ ン メ ン ト に よ っ て 生 じ て し ま う シ ン ボ ル 間 の ギ ャ ッ プ を 防 止 す る 。 こ の オ プ シ ョ ン は ソ ー ト を 行 わ な い よ う に す る 。

-split-by-reloc count

出 力 フ ァ イ ル に 余 分 な セ ク シ ョ ン を 生 成 し て 、 フ ァ イ ル 中 の そ れ ぞ れ の 出 力 セ ク シ ョ ン が count 以 上 の リ ロ ケ ー シ ョ ン を 含 ま な い よ う に す る 。 こ れ は COFF オ ブ ジ ェ ク ト フ ァ イ ル フ ォ ー マ ッ ト の 巨 大 な リ ロ ケ ー タ ブ ル フ ァ イ ル を 、 リ ア ル タ イ ム カ ー ネ ル に ダ ウ ン ロ ー ド す る 場 合 な ど に 役 に 立 つ 。 COFF は セ ク シ ョ ン あ た り 65535 以 上 の リ ロ ケ ー シ ョ ン を 持 て な い か ら で あ る 。 任 意 の セ ク シ ョ ン を サ ポ ー ト し て い な い フ ォ ー マ ッ ト で は 、 こ の オ プ シ ョ ン は 機 能 し な い こ と に 注 意 。 リ ン カ は そ れ ぞ れ の 入 力 セ ク シ ョ ン を 分 割 し て 再 配 置 す る わ け で は な い 。 し た が っ て 入 力 フ ァ イ ル の セ ク シ ョ ン に count 以 上 の リ ロ ケ ー シ ョ ン を 含 む も の が あ れ ば 、 そ れ に 対 応 し て そ れ だ け の リ ロ ケ ー シ ョ ン を 持 っ た 出 力 セ ク シ ョ ン は 作 成 さ れ て し ま う 。

-split-by-file

-split-by-reloc と 似 て い る が 、 そ れ ぞ れ の 入 力 フ ァ イ ル に 対 し て 新 た な 出 力 セ ク シ ョ ン を 生 成 す る 。

-Tbss org

-Tdata org

-Ttext org そ れ ぞ れ 出 力 フ ァ イ ル の bss data text セ グ メ ン ト

に 対 し て org を 開 始 ア ド レ ス に す る 。 org は 16 進 の 整 数 で な け れ ば な ら な い 。

-T commandfile

-c commandfile と 等 価 で あ る 。 他 の ツ ー ル と の 互 換 性 の た め に 用 意 さ れ た 。

-t

入 力 フ ァ イ ル を ld が 処 理 す る ご と に 、 フ ァ イ ル の 名 前 を 表 示 す る 。

-u sym

sym を 出 力 フ ァ イ ル に 未 定 義 な シ ン ボ ル と し て 挿 入 す る 。 例 え ば こ れ は 、 標 準 ラ イ ブ ラ リ か ら 付 加 的 な モ ジ ュ ー ル を リ ン ク す る ト リ ガ に 使 う こ と が で き る 。 -u は 必 要 な 未 定 義 シ ン ボ ル の 数 だ け 繰 り 返 す こ と が で き る 。

-Ur

C++ プ ロ グ ラ ム 以 外 で は 、 こ の オ プ シ ョ ン は -r と 等 価 で あ り 、 リ ロ ケ ー タ ブ ル な 出 力 を 生 成 す る (つ ま り 再 び ld の 入 力 フ ァ イ ル に 用 い る こ と の で き る フ ァ イ ル を 出 力 す る )。 C++ プ ロ グ ラ ム を リ ン ク す る 際 に は 、 -Ur -r と 異 な り 、 コ ン ス ト ラ ク タ へ の 参 照 を 解 決 す る 。

--verbose

ld の バ ー ジ ョ ン 番 号 を 表 示 し 、 サ ポ ー ト さ れ て い る エ ミ ュ レ ー シ ョ ン を リ ス ト す る 。 入 力 フ ァ イ ル が そ れ ぞ れ オ ー プ ン で き る か ど う か も 表 示 す る 。

-v, -V

ld の バ ー ジ ョ ン 番 号 を 表 示 す る 。 -V は サ ポ ー ト さ れ て い る エ ミ ュ レ ー シ ョ ン も リ ス ト す る 。

--version

ld の バ ー ジ ョ ン 番 号 を 表 示 し て 終 了 す る 。

-warn-common

共 通 シ ン ボ ル が 他 の 共 通 シ ン ボ ル や シ ン ボ ル 定 義 と 結 合 さ れ て い る 場 合 に 警 告 を 発 す る 。 Unix の リ ン カ は こ の 点 に は 比 較 的 寛 容 で あ る が 、 他 の OS の リ ン カ に は そ う で な い も の も あ る 。 こ の オ プ シ ョ ン は グ ロ ー バ ル シ ン ボ ル を 結 合 す る こ と に よ っ て 生 じ る 問 題 点 を 見 つ け る 手 が か り に な る か も し れ な い 。

-warn-constructors

グ ロ ー バ ル コ ン ス ト ラ ク タ が 用 い ら れ た ら 警 告 を 発 す る 。 こ れ が 意 味 を 持 つ オ ブ ジ ェ ク ト フ ァ イ ル フ ォ ー マ ッ ト は 少 な い 。 COFF や ELF で は 、 リ ン カ は グ ロ ー バ ル コ ン ス ト ラ ク タ を 検 出 す る こ と が で き な い 。

-warn-multiple-gp

出 力 フ ァ イ ル に 複 数 の グ ロ ー バ ル な ポ イ ン タ 値 が 必 要 な 場 合 に 警 告 を 発 す る 。 こ の オ プ シ ョ ン が 意 味 を 持 つ の は 、 Alpha の よ う な 特 殊 な プ ロ セ ッ サ だ け で あ る 。

-warn-once

未 定 義 シ ン ボ ル に 関 す る 警 告 を シ ン ボ ル ご と に 一 度 だ け に す る 。 デ フ ォ ル ト で は そ の シ ン ボ ル を 参 照 す る モ ジ ュ ー ル 一 つ に つ い て 一 回 警 告 が 出 る 。

-warn-section-align

出 力 セ ク シ ョ ン の ア ド レ ス が ア ラ イ ン メ ン ト の た め に 変 更 さ れ た 場 合 に 警 告 を 出 す 。 通 常 ア ラ イ ン メ ン ト は 入 力 セ ク シ ョ ン に よ っ て 設 定 さ れ る 。 ア ド レ ス は 明 示 的 に 指 定 さ れ な か っ た 場 合 (つ ま り SECTIONS コ マ ン ド が セ ク シ ョ ン の ス タ ー ト ア ド レ ス を 指 定 し な か っ た 場 合 ) に の み 変 更 さ れ う る 。

--whole-archive

コ マ ン ド ラ イ ン で こ の オ プ シ ョ ン 以 降 に 指 定 さ れ た そ れ ぞ れ の 書 庫 に 対 し て 、 書 庫 内 部 の 全 て の オ ブ ジ ェ ク ト フ ァ イ ル を リ ン ク す る (デ フ ォ ル ト で は 書 庫 か ら 必 要 な オ ブ ジ ェ ク ト フ ァ イ ル を 検 索 す る )。 こ れ は 通 常 書 庫 フ ァ イ ル を 共 有 ラ イ ブ ラ リ に 変 え る と き 、 内 部 の オ ブ ジ ェ ク ト を 全 て 共 有 ラ イ ブ ラ リ に 含 め る た め に 指 定 さ れ る 。

--no-whole-archive

コ マ ン ド ラ イ ン で こ の オ プ シ ョ ン 以 降 に 現 わ れ る 書 庫 に 対 し て --whole-archive オ プ シ ョ ン の 効 果 を 無 効 に す る 。

--wrap symbol

symbol に 対 し て ラ ッ パ 機 能 を 用 い る 。 symbol へ の 未 定 義 な 参 照 は 全 て __wrap_ symbol と し て 解 決 さ れ る 。 ま た __REAL_ symbol へ の 未 定 義 な 参 照 は す べ て symbol と し て 解 決 さ れ る 。

-X

一 時 的 な ロ ー カ ル シ ン ボ ル を す べ て 削 除 す る 。 ほ と ん ど の タ ー ゲ ッ ト で は 、 こ れ は ‘ L ’ で 始 ま る ロ ー カ ル シ ン ボ ル を 意 味 す る 。

-x

ロ ー カ ル シ ン ボ ル を 全 て 削 除 す る 。

環 境 変 数

ld の 動 作 は 環 境 変 数 GNUTARGET に よ っ て 変 更 す る こ と が で き る 。

GNUTARGET -b (ま た は 等 価 な オ プ シ ョ ン -format ) を 用 い な い 場 合 の 入 力 フ ァ イ ル の オ ブ ジ ェ ク ト フ ォ ー マ ッ ト を 定 義 す る 。 こ の 値 は 入 力 フ ォ ー マ ッ ト に 対 し て 有 効 な BFD 名 の 一 つ で な け れ ば な ら な い 。 GNUTARGET default に 設 定 さ れ て い た 場 合 に は 、 BFD は 入 力 さ れ る バ イ ナ リ フ ァ イ ル を 調 べ て 入 力 フ ォ ー マ ッ ト を 決 定 し よ う と す る 。 こ れ は 通 常 は 成 功 す る が 、 決 定 で き な い 可 能 性 も あ る 。 オ ブ ジ ェ ク ト フ ァ イ ル フ ォ ー マ ッ ト で 用 い ら れ て い る マ ジ ッ ク ・ ナ ン バ ー が 一 意 で あ る こ と を 保 証 す る 方 法 は 存 在 し な い か ら で あ る 。 し か し BFD を そ れ ぞ れ の シ ス テ ム で 設 定 す る 際 に は 、 そ の シ ス テ ム に 一 般 的 な フ ォ ー マ ッ ト が 検 索 リ ス ト の 最 初 の 方 に 置 か れ る 。 し た が っ て 複 数 フ ォ ー マ ッ ト の 可 能 性 が 存 在 し た 場 合 に は 、 よ り 一 般 的 な フ ォ ー マ ッ ト と し て 解 釈 さ れ る 。

関 連 項 目

objdump ( 1 )
info
の ‘ ld ’ お よ び ‘ binutils ’ エ ン ト リ
ld: the GNU linker
, Steve Chamberlain and Roland Pesch; The GNU Binary Utilities , Roland H. Pesch

著 作 権

Copyright (c) 1991, 1992 Free Software Foundation, Inc.

Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.

Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.

Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be included in translations approved by the Free Software Foundation instead of in the original English.