ld 用於把目標代碼文件鏈接爲可執行文件或者庫文件 參數 -b: 指定目標代碼輸入文件的格式 -Bstatic: 只使用靜態庫 -Bdynamic: 只使用動態庫 -Bsymbolic: 把引用捆綁到共享庫中的全局符號 -c: 從指定的命令文件讀取命令 --cref: 建立跨引用表 -d: 設置空格給通用符號,即便指定了可重定位輸出 -defsym: 在輸出文件中建立指定的全局符號 -demangle: 在錯誤消息中還原符號名稱 -e: 使用指定的符號做爲程序的初始執行點 -E: 對於ELF格式文件,把全部符號添加到動態符號表 -f: 對於ELF格式共享對象,設置 DT_AUXILIARY 名稱 -F: 對於ELF格式共享對象,設置 DT_FILTER 名稱 -format: 指定目標代碼輸入文件的格式 (和 -b 相同) -g: 被忽略。用於提供和其餘工具的兼容性 -h: 對於ELF格式共享對象,設置 DT_SONAME 名稱 -i: 執行增量鏈接 -l: 把指定的存檔文件添加到要鏈接的文件清單 -L: 把指定的路徑添加添加到搜索庫的目錄清單 -M: 顯示鏈接映射,用於診斷目的 -Map: 建立指定的文件來包含鏈接映射 -m: 模擬指定的鏈接器 -N: 指定讀取/寫入文本和數據段 -n: 設置文本段爲只讀 -noinhibit-exec: 生成輸出文件,即便出現非致命鏈接錯誤 -no-keep-memory: 爲內存使用優化鏈接 -no-warn-mismatch: 容許鏈接不匹配的目標文件 -O: 生成優化了的輸出文件 -o: 指定輸出文件的名稱 -oformat: 指定輸出文件的二進制格式 -R: 從指定的文件讀取符號名稱和地址 -r: 生成可重定位的輸出(稱爲部分鏈接) -rpath: 把指定的目錄添加到運行時庫搜索路徑 -rpath-link: 指定搜索運行時共享庫的目錄 -S: 忽略來自輸出文件的調試器符號信息 -s: 忽略來自輸出文件的全部符號信息 -shared: 建立共享庫 -sort-common: 在輸出文件中不按照長度對符號進行排序 -split-by-reloc: 按照指定的長度在輸出文件中建立額外的段 -split-by-file: 爲每一個目標文件在輸出文件中建立額外的段 --section-start: 在輸出文件中指定的地址定位指定的段 -T: 指定命令文件 (和 -c 相同) -Ttext: 使用指定的地址做爲文本段的起始點 -Tdata: 使用指定的地址做爲數據段的起始點 -Tbss: 使用指定的地址做爲bss段的起始點 -t: 在處理輸入文件時顯示它們的名稱 -u: 強制指定符號在輸出文件中做爲未定義符號 -warn-common: 當一個通用符號和另外一個通用符號結合時發出警告 -warn-constructors: 若是沒有使用任何全局構造器,則發出警告 -warn-once: 對於每一個未定義的符號只發出一次警告 -warn-section-align: 若是爲了對齊而改動了輸出段地址,則發出警告 --whole-archive: 對於指定的存檔文件,在存檔中包含全部文件 -X: 刪除全部本地臨時符號 -x: 刪除全部本地符號