Provided by: manpages-zh_1.6.4.0-1_all bug

NAME

       ld - GNU linker (聯結器)

總覽 (SYNOPSIS)

       ld     [-o output] objfile...
              [-Aarchitecture] [-b input-format] [-Bstatic] [-Bdynamic] [-Bsymbolic]
              [-c commandfile] [--cref] [-d|-dc|-dp]
              [-defsym symbol = expression] [--demangle] [--no-demangle] [-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] [-lar] [-Lsearchdir] [-M] [-Map mapfile] [-m emulation] [-n|-N]
              [-noinhibit-exec] [-no-keep-memory] [-no-warn-mismatch] [-Olevel] [-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]

描述 (DESCRIPTION)

       ld 合併 一組 目標檔案(object)  庫檔案(archive), 重定位  資料部分,  構建  符號引用(symbol
       reference). 一般說來, 編譯 生成 可執行檔案 的 最後步驟 就是 呼叫 ld.

       ld  可以讀取  聯結器命令語言(Linker Command Language) 編寫的 指令碼檔案, 它 能夠 對 連線
       過程 提供 精確 和 全面 的 控制.  本 手冊頁 不討論 命令語言; 可參看 `info'  `ld' 項, 或者
       手冊 ld: the GNU linker , 裡面有 命令語言 的 細節 和 其他 GNU linker 的 內容.

       這個版本 的 ld 使用 通用BFD庫 操作 目標檔案, ld 能夠  多種格式 讀入, 連線  輸出 目標檔
        —例如 COFF  a.out, 能夠  不同的格式 連線 在一起, 產生 各種 有效    目標檔案.   用
       `objdump -i' 可以 列出 各種 體系結構 支援  格式 列表; 另見 objdump(1).

       GNU  linker 不僅 靈活 強大, 還能夠 比 其他 linker 提供 更多 的 診斷資訊.  很多 linker 只要
       碰上 一個錯誤 就 立刻停止 執行; 而 ld 一有可能 仍然 繼續執行, 這樣  容易  定位出  其他錯誤
       (某些情況下, 儘管出了錯, 仍然 生成 輸出檔案).

       GNU  linker ld 期望 實現 更廣泛  適用範圍, 儘可能 相容 其他 linker.  透過 命令列 和 環境
       變數, 使用者 可以 用 ld 執行 多種 操作.

選項 (OPTIONS)

       過於豐富的 命令列選項 使人 感到 壓抑, 好在 實際使用 中, 多數情況下 只需要 掌握 其中 一小部
       分.  例如, 在 一個 標準的, 提供 相應支援 的 Unix 系統 中, 常常 用 ld 連線 標準的 Unix 目標
       檔案. 如果要 連線 hello.o:

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

       它 告訴 ld 生成 一個 叫做 output  檔案 , 其中 連線了 檔案 /lib/crt0.o  hello.o 以及 庫
       檔案 libc.a (在 標準搜尋目錄下).

       ld  命令列選項 可以 任意順序 出現, 甚至 重複出現. 多數 情況 下, 如果 用 不同的 引數 重複
       同一種 選項, ld 不會 出現 更多的變化, 也不會 覆蓋 以前的 引數. (指 命令列 中 左邊的引數)

       例外情況 — 某些選項 有 反覆使用 的 需要 — 如 -A, -b (或等同的 -format), -defsym,  -L,  -l,
       -R,  -u.

       待連線的 目標檔案 列表, 即 總覽中的 objfile, 可以 放在 命令列選項 的 前面, 後面, 或者 混雜
       其中; 但是 不能 把 objfile 放置於 某個 選項開關  它的引數 中間.

       一般說來 linker 要求 至少 輸入 一個 目標檔案, 但是 可以 用 -l, -R 輸入 其他格式   二進位
       制檔案,  或者    命令語言  編寫的  指令碼檔案.  如果 沒有 指定 二進位制格式  輸入檔案,
       linker 就不能 產生 輸出檔案, 而是 顯示 `No input files'.

       選項的引數 必須 出現在 代表 選項 的 字母 後面, 可以有 空白符, 也可以 沒有.

       -Aarchitecture
              在 目前版本 的 ld 中, 這個 選項 僅適用於 Intel 960 體系系列.    ld    設定  中,
              architecture  引數  960 系列  成員 識別名稱 之一,  兩個字母 組成; 這個選項 指
              出 期望的 輸出目標, 對 輸入檔案 的 不相容指令 作出 警告.  它 能夠 改變 linker 對 庫
              檔案  的  搜尋策略, 以便於 支援 體系相關庫, 方法是 把 體系識別名稱 新增在 待搜尋 的
              檔名 尾部.

              例如, 如果 ld 命令列  `-ACA'  `-ltry', linker  搜尋 (根據 內建的路徑  -L 
              定的路徑) 以下 名稱  庫檔案

              try
              libtry.a
              tryca
              libtryca.a

              前兩項 是 常規做法; 後兩項 源於 `-ACA'.

              將來發布的 ld 可能  其他 體系結構 提供 類似功能.

              可以  在  命令列上 使用 多個 -A 選項, 只要  體系 允許  目標體系 相連, 其選項 使
              ld  搜尋 -l 指定的庫 中, 增加 和 體系結構名稱 對應的庫.

       -b input-format
              指定 輸入目標檔案 的 二進位制格式, 目標檔案 在 命令列 上 給出, 放在 這個選項 的  後
              面.  一般  不需要 指定 這個選項, ld  預設輸入格式 配置為 各個機器  最常用  
              式. input-format  字串, BFD  支援的 格式 名稱. 選項 -format input-format   
              同的 作用, 指令碼命令 TARGET 也是 一樣.

              連線  某些  不尋常的 二進位制檔案 時 需要 這個選項. 或者 使用 -b 選項 強調 格式切換
              (連線 不同格式  目標檔案), 比如說, 在 每組 特定格式  的  目標檔案  前面  使用  -b
              input-format 選項.

              環境變數  GNUTARGET 用於 指定 預設格式. 也可以  指令碼檔案   TARGET 命令 定義
              輸入格式.

       -Bstatic
              禁止 連線 共享庫. 這個選項 只在 支援 共享庫 的 平臺 上 有意義.

       -Bdynamic
              連線 動態庫. 這個選項 只在 支援 共享庫 的 平臺 上 有意義, 一般說來 它 是 預設選項.

       -Bsymbolic
              當 建立 共享庫 的 時候, 只要 有可能, 在 共享庫 內 編聯(bind  reference)  全域性符號
              和  定義(definition). 一般說來, 允許 連線了 某個 共享庫 的 程式 覆蓋 共享庫內 的 定
              義. 這個選項 只在 支援 共享庫 的 ELF 平臺 上 有意義.

       -c commandfile
              告訴 ld  檔案 commandfile  讀取 連線 命令. 這些 命令 徹底的 覆蓋 ld  預設  
               格式 (而不是 新增); commandfile 必須 詳盡的 描述 目標格式  所有細節.

              你 也可以 在 命令列 上 直接嵌入 連線命令, 把 指令碼 嵌在 大括弧 `{'  `}' 中間.

       --cref 輸出  交叉引用表(cross reference).  如果 建立了 連線映像(linker map) 檔案, 交叉引用
              表 就 輸出到 映像檔案 中, 否則 送往 標準輸出.

       -d

       -dc

       -dp    這 三個選項 是 一回事, 為了 相容 其他 linker 而 同時提供.  即使 已經 指定  ld  生成
              可重定位檔案  (-r),  它們  能為  公共符號(common  symbol)  分配  空間.   指令碼命令
              FORCE_COMMON_ALLOCATION  同樣作用.

       -defsym symbol = expression
              在 輸出檔案 中 建立 一個 全域性符號, 它 含有 expression 給出的 絕對地址. 可以  
              令列 使用 多個 這樣的 選項. 這個 expression 只能 使用 有限的 數學形式: 十六進位制常
              數, 已經存在  符號名字.  或者 使用 +  - 加減 十六進位制常數  符號. 如果  需要
              更復雜的 表示式, 考慮 使用 命令語言指令碼.

       --demangle

       --no-demangle
              這些選項  控制 是否在 出錯資訊 和 其他資訊 中, 輸出 可讀的(demangle) 符號名稱. 如果
              使用了 demangle 選項, linker 儘量使 符號名稱 容易理解: 去掉 領頭的 下劃線 (如果  被
              目標檔案格式 採用); 把 C++ 難懂的 符號名稱 (symbol name) 轉換成 可讀的 名稱. 預設情
              況下 linker 輸出 可讀的 符號名稱, 除非 設定了 環境變數 COLLECT_NO_DEMANGLE .   這些
              選項 能夠 覆蓋 預設行為.

       -e entry
              使用 entry (入口) 識別符號 作為 程式 執行  開始端, 而不是 預設入口. 關於 預設入口
               其他 設定 入口 的 方法 參見 `info'  ld' 項.

       -embedded-relocs
              這個選項 僅用於 連線  MIPS上  嵌入的  PIC  程式碼,  GNU  的  編譯器  和  彙編器  用
              -membedded-pic  選項 能夠 生成 這種程式碼. 它使 linker 建立 一張 表格, 用於 在 執行
              的時候, 重定位 任何 被 靜態初始化 為 指標值 的 資料. 詳見 testsuite/ld-empic 的  程
              式碼.

       -E

       -export-dynamic
              當  建立 ELF 檔案 時, 把 所有 符號 加入 動態符號表.  一般說來, 動態符號表 只包含 動
              態目標庫(dynamic object) 需要的 符號. 用 dlopen 的 時候 需要 這個 選項.

       -f name

       --auxiliary name
              建立 ELF 共享目標庫 時, 把 內部的  DT_AUXILIARY  欄位  設定為  name.   它  告訴  動
              態linker, 把 該 共享目標庫 的 符號表 用做 共享目標 name 的 符號表 的 輔助過濾器.

       -F name

       --filter name
              建立  ELF 共享目標庫 時, 把 內部的 DT_FILTER 欄位 設定為 name.  它 告訴 動態linker,
              把 該 共享目標庫 的 符號表 用做 共享目標 name 的 符號表 的 輔助過濾器.

       -format input-format
              等同於 -b input-format.

       -g     虛設項; 用於 相容 其他 工具.

       -G size把 使用 GP 暫存器 最佳化的 目標(檔案) 大小 限制為
              size .  用於 MIPS ECOFF, 對 其他 目標檔案格式 無效.

       -h name

       -soname name
              建立 ELF 共享目標庫 時, 把 內部的 DT_SONAME 欄位 設定為 name.  如果 某個 可執行檔案
              連線了  含有 DT_SONAME 欄位 的 共享目標庫, 當 該程式 執行 時, 動態 linker 試圖 根據
              DT_SONAME 欄位 調入 共享的 目標庫, 而 不使用 提供給 linker 的 檔名.

       --help 在 標準輸出 顯示 命令列選項 的 摘要, 然後 結束. 這個選項 和 --version  選項  使用了
              兩個 短橫線, 不是 一個, 目的是 相容 其他 GNU 程式.  只用 一個 短橫線 的 選項 是為了
              相容 其他 linker.

       -i     執行 增量連線(incremental link), 等同於 -r 選項.

       -lar   在 連線檔案 列表 中 增加 歸檔庫檔案 ar.  可以 多次 使用 這個選項. 凡指定 一項 ar  ,
              ld 就會  路徑列表  增加 一項  libar.a  搜尋.

       -Lsearchdir
              這個選項  將  路徑 searchdir 新增  路徑列表 中去, ld  這個 列表  搜尋 歸檔庫.
              可以 多次 使用 這個選項.

              預設的 搜尋路徑集 (不使用 -L 時) 取決於 ld 使用的  模擬模式(emulation)  及其  配置.
              在 連線指令碼 中, 可以 用 SEARCH_DIR 命令 指定 路徑.

       -M     在 標準輸出 顯示  連線映像 — 有關 ld  符號 對映到 何處  診斷資訊, 以及 全域性公
              共儲存器  分配 資訊.

       -Map mapfile把 連線映像 輸出到
              mapfile 檔案 中 — 有關 ld  符號 對映到 何處  診斷資訊, 以及 全域性公共儲存器 
              分配 資訊.

       -m emulation模仿
              emulation  聯結器.  可以 用 --verbose-V 選項 列出 有效的 模擬項.  這個選項 覆蓋
              編譯 進去 的 預設項.

       -N     指定 可讀寫 的 正文  資料 節(section). 如果 輸出格式 支援 Unix 風格的  幻數(magic
              number), 則 輸出檔案 標記為 OMAGIC.

              當 使用 `-N' 選項 時, linker 不做 資料段  頁對齊(page-align).

       -n     設定 正文段 為 只讀, 如果 有可能, NMAGIC  可寫.

       -noinhibit-exec
              一般說來,  如果 連線的 時候 發生 錯誤, linker 不會 產生 輸出檔案.  使用了 這個 標誌
              選項, 只要 不出 致命差錯, 仍能夠 產生 輸出檔案.

       -no-keep-memory
              linker 通常 犧牲 記憶體, 最佳化 速度, 它 把 輸入檔案 的 符號表 緩衝在 記憶體中.  這
              個選項 使 linker 必要時 重複讀取 符號表, 以便 最佳化 記憶體使用. 連線 大型 可執行檔
              案 的 時候, linker 有可能 記憶體 不夠, 此時 可以 試試 這個選項.

       -no-warn-mismatch
              一般情況下, 如果 試圖 連線 某些 不匹配 的 輸入檔案, 比如說, 按 不同 處理器 編譯 的,
              或者 具有 不同的 位元組順序(endianness), linker 就會 報錯.  這個選項 告訴 linker 默
              許 這種 錯誤. 要 小心使用 這個選項, 除非 你 正在做 某些 特殊 操作, 而且  能夠  確定
              不需要 linker 報錯.

       -o output
              output  用來  指定  ld 生成的 程式名; 如果 沒有 使用 這個選項, 預設名字  `a.out'.
              指令碼命令 OUTPUT  同樣 作用.

       -Olevel
              生成 最佳化的 輸出檔案. 這個選項 佔用 比較多 的 時間, 因此 僅 常用於 最終檔案 的 生
              成.  level  數值引數. 任何 大於零  引數 意味著 要求 最佳化.

       -oformat output-format
              指定  輸出目標檔案  的 二進位制格式. 一般 不需要 指定 這個選項, ld  預設 輸出格式
              配置為 各個機器  最常用  格式. output-format  一個 字串, BFD   支援的  格式
              名稱. 指令碼命令 OUTPUT_FORMAT 也可以 指定 輸出格式, 但是 這個選項 能夠 覆蓋 掉 它.

       -R filename
              從 檔案 filename  讀取 符號名稱 及其 地址, 但是 不做 重定位, 不傳送到 輸出端.  它
              可以 使 輸出檔案 符號引用 其他程式中 定義的 絕對地址.

       -relax 這個選項 的 效果 取決於 機器, 目前 只支援 H8/300.

              在 某些 平臺 上 可以 使用 這個選項 做 全域性最佳化, 它 讓 linker 解決 程式中 的  地
              址處理, 例如 在 輸出目標檔案 中 緩和(relax) 地址模式 以及 合成 (synthesize) 新指令.

              其他平臺 也接受 `-relax' 選項, 但是 不起作用.

       -r     生成 可重定位 輸出 — 就是說, 生成的 輸出檔案 能夠 依次 成為 ld  輸入, 一般 稱之為
              不完全(partial) 連線. 它 有 一個 副效應, 在 支援 標準 Unix 幻數(magic number) 的 環
              境  中, 這個選項 把 輸出檔案 的 幻數 設定成 OMAGIC. 如果 沒有 指定 這個選項, linker
              生成 絕對定位    檔案.   連線  C++  程式時,  這個選項  不會    解析      構造
              子(constructor)  引用(reference); 不妨 改用 -Ur 選項.

              這個選項 的 效果 和 -i 一樣.

       -rpath directory
              增加  一條  對 執行時(runtime)庫 的 搜尋路徑. 這個選項 用於 連線 ELF 可執行 檔案 和
              共享目標庫. 所有 -rpath 選項 的 引數 被 合併, 然後 一起 傳遞 給 執行時 linker, 執行
              時  linker 在 執行 的 時候 使用 這些 路徑 尋找 共享目標庫.  -rpath 也可以 用來 定位
              共享目標庫 引用的 共享目標庫; 參見 對 -rpath-link 選項 的 敘述.  如果 連線 ELF 可執
              行檔案  時 沒有 指定 -rpath 選項, linker 就使用 環境變數 LD_RUN_PATH 的 內容 — 只要
              這個 環境變數 存在.

              -rpath 選項 能夠 用在 SunOS 上, 預設狀況下, linker 可以 根據 給出的 -L 選項 形成 執
              行時 搜尋路徑.  如果 使用了 -rpath 選項, 執行時 搜尋路徑 從 -rpath 中 產生, 而 忽略
              -L 選項.  這一點 有利於 使用 gcc, 在 NFS 檔案系統 上, gcc 可能 產生 許多 -L 選項.

       -rpath-link directory
              使用 ELF 或 SunOS 的 時候, 某些 共享庫 可能 需要 其他 共享庫.  這種情況 一般 發生在
              某個 ld -shared 連線 中, 輸入檔案 包含了 共享庫.

              如果  linker 遇到 這樣的 依賴情況, 當 它 執行 非共享, 不可重定位 的 連線 時, linker
              將 自動 尋找 所需的 共享庫, 如果 它們 沒有 被 顯明 包含, 就 把 它們 包含到 連線 中.
              在  這種情況下, -rpath-link 選項 指定了 最先 搜尋 的 目錄集.  -rpath-link 能夠 指定
              一批 目錄, 目錄 用 冒號 隔開. 也可以 用 這些 目錄名 作為 引數, 重複 使用 這個 選項.

              如果 沒有 找到 需要的 共享庫, linker 產生 一個 警告, 但是 繼續 連線.

       -S     去掉 輸出檔案 中的 除錯符號資訊 (但不是 所有符號).

       -s     去掉 輸出檔案 中的 全部 符號資訊.

       -shared
              建立 一個 共享庫. 目前 只支援 ELF 和 SunOS 平臺 (在 SunOS 上, 這個選項 不是 必須的,
              如果 沒有 使用 -e 選項, 而且 存在 不確定 的 符號, linker 將 自動 建立 共享庫).

       -sort-common
              ld 通常 把 全域性公共符號 放到 適當的 輸出節, 按照 大小 排序.  首先是 單位元組符號,
              然後是 雙位元組, 接下來是 四位元組, 隨後是 其他的.  它的 目的是 防止 符號間 因為 排
              布限制 出現 間隙.  使用 這個選項 可以 禁止 排序.

       -split-by-reloc count
              在  輸出檔案 中 建立 附加節(extra section), 使得 輸出檔案 中, 沒有 某一個 輸出節 包
              含 大於 count 個 重定位項. 它 用於 產生 大型 可重定位 COFF 目標檔案, 可以 插入到 某
              些  實時核心 中; 因為 COFF 不能 在 單一節內 存放 65535 以上的 重定位項.  注意, 有些
              目標檔案格式 不支援 任意 分節, 此時 這個選項 將會 操作 失敗.  此外,  linker  不能夠
              分割  輸入節, 然後 重新分配, 因此 如果 某個 輸入節 包含 count 以上的 重定位項, 相應
              的 輸出節 將 包含 同樣多的 重定位項.

       -split-by-file
              類似於 -split-by-reloc , 但是 它為 每個 輸入檔案 建立一個 新的 輸出節.

       -Tbss org

       -Tdata org

       -Ttext orgorg 作為 輸出檔案   起始地址  特別是  bss, data,  text 段.
              org 必須是 十六進位制整數.

       -T commandfile
              等同於 -c commandfile; 用於 相容 其他工具.

       -tld 處理 輸入檔案  時候 顯示 檔名.

       -u symsym 作為 未定義(undefined)  符號  送入  輸出檔案.   這樣做  可以,  例如,  促使
              linker  從 標準庫 連線 某個 附加的模組.  允許 使用 多個 -u 選項 輸入 多個 未定義 
              號.

       -Ur    對於 除 C++ 以外的 任何 程式, 這個選項 等同於 -r: 生成 可重定位  輸出    就是說,
              能夠  依次  輸入  ld    輸出檔案.  連線  C++  程式    時候, -Ur  解析  構造
              子(constructor)  引用(reference), 這一點  -r 不同.

       --verbose
              顯示 ld 的 版本號, 列出 支援的 模擬項(emulation). 顯示 哪些 輸入檔案 能夠 開啟,  哪
              些 不能,

       -v, -V 顯示 ld  版本號.  此外 -V 選項 能夠 列出 支援的 模擬項.

       --version
              顯示 ld 的 版本號 然後 結束.

       -warn-common
              當  公共符號 和 其他 公共符號 合併 時, 或者 和 某個 符號定義 合併 時, linker 就發出
              警告. Unix 系統的 linker 允許 這種 有些 草率 的 做法, 其他 作業系統 則 不行. 這個選
              項 幫助你 在 合併 全域性符號 的 時候 發現 潛在問題.

       -warn-constructors
              如果  使用了 全域性構造子(global constructor), linker 就發出 警告.  它 只對 某些 目
              標檔案結構 有用, 對於 如 COFF 或 ELF, 此 linker 不能夠 檢測 全域性構造子 的  使用情
              況.

       -warn-multiple-gp
              如果  輸出檔案  需要 多個 全域性指標值, linker 就發出 警告. 這個選項 只能 用於 某些
              處理器, 如 Alpha.

       -warn-once
              對 每個 未定義符號 只 警告 一次, 而不是 每次 引用 這個符號 都 警告.

       -warn-section-align
              如果 某個 輸出節(section) 的 地址 因為 邊界對齊 而 發生 改變, linker  就發出  警告.
              典型情況下  由 輸入節 設定 邊界, 只有 不做 明確指定 的 時候 地址 才會 改變; 就是說,
              SECTIONS 命令 沒有 指出 該節 的 開始地址.

       --whole-archive
              對於 命令列 上 --whole-archive 選項 提到的 每個 歸檔庫, 連線時 連入 歸檔庫 的  全部
              目標檔案,  而不是  在 歸檔庫 中 搜尋 所需的 目標檔案. 一般用於 把 歸檔庫檔案 轉變成
              共享庫檔案, 迫使 全部 目標檔案 進入 共享庫.

       --no-whole-archive
              關閉 --whole-archive 選項 對 歸檔庫 的 影響.

       --wrap symbolsymbol 使用 包裝函式(wrapper function). 任何 對 symbol 未定義 的 引用 (undefined
              reference) 將 解析為 __wrap_symbol.  任何 對 __real_symbol 未定義 的 引用 將 解析為
              symbol.

       -X     刪除 全部 臨時的 區域性符號. 大多數 目的檔案 中, 這些 區域性符號 的 名字 用 `L'  
              開頭.

       -x     刪除 全部 區域性符號.

環境 (ENVIRONMENT)

       透過 環境變數 GNUTARGET 可以 改變 ld  行為.

       如果 沒有 使用 -b 選項 (或 相同的 -format), GNUTARGET 決定了 輸入檔案  目標格式, 其值 
        BFD的 名稱之一.  如果 沒有  GNUTARGET    環境變數,  ld  就使用  主機的  本地格式.  如果
       GNUTARGET  設定為  default, BFD 透過 檢查 輸入檔案  二進位制格式 判斷 輸入格式; 這個方法
       通常 有效, 但 隱含 歧義, 這是因為 沒有 辦法 保證 標誌 目標檔案格式 的 幻數 是 唯一的.   不
       過,  各個系統 配置 BFD 的 時候, 會把 系統 約定的格式 放在 搜尋列表 的 前面, 因此 能夠 按照
       約定 消除 歧義.

另見 (SEE ALSO)

       objdump(1)
       `ld' 和 `binutils' 項 ( info)
       ld: the GNU linker, Steve Chamberlain and Roland Pesch; The GNU Binary  Utilities,  Roland
       H. Pesch.

COPYING

       Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 1998 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.

[中文版維護人]

       徐明 <xuming@users.sourceforge.net>

[中文版最新更新]

       2003/05/13 第一版

《中國Linux論壇man手冊頁翻譯計劃》

       http://cmpp.linuxforum.net

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh