dsymutil - 操作封存的 DWARF 除錯符號檔案¶
語法¶
說明¶
dsymutil 會使用可執行檔 可執行檔 符號表中包含的除錯符號資訊,連結在該可執行檔的物件檔案中找到的 DWARF 除錯資訊。預設情況下,連結的除錯資訊會放在與可執行檔同名的 .dSYM
套件中。
選項¶
- --accelerator=<accelerator type>¶
指定所需的加速器表類型。有效的選項為「Apple」、「Dwarf」、「Default」和「None」。
- --arch <arch>¶
僅針對指定的 CPU 架構類型連結 DWARF 除錯資訊。架構可以透過名稱指定。使用此選項時,如果無法正確連結任何架構,則會傳回錯誤。此選項可以指定多次,每個所需的架構一次。預設情況下,所有 CPU 架構都將被連結,任何無法正確連結的架構都將導致 dsymutil 傳回錯誤。
- --build-variant-suffix <suffix=buildvariant>¶
指定用於建置可執行檔的建置變體後綴。一個產品的二進制檔案可以有多個變體,每個變體的建置方式略有不同。最常見的建置變體是「debug」和「profile」。設定 DYLD_IMAGE_SUFFIX 環境變數將導致 dyld 在執行時載入指定的變體。
- --dump-debug-map¶
以 YAML 格式傾印 可執行檔 的除錯映射(包含除錯資訊的物件檔案清單)並退出。不會進行 DWARF 連結。
- -D <path>¶
指定一個包含要搜尋的 dSYM 檔案的目錄。這用於可合併的程式庫,因此 dsymutil 知道在哪裡可以找到包含這些程式庫中存在的符號除錯資訊的 dSYM 檔案。
- --fat64¶
在發布通用二進制檔案時使用 64 位元標頭。
- --flat, -f¶
產生單一 dSYM 檔案。除非使用
-o
選項指定輸出檔案,否則會在可執行檔名稱後附加.dwarf
副檔名。
- --gen-reproducer¶
產生由輸入物件檔案組成的重現器。 --reproducer=GenerateOnExit 的別名。
- --help, -h¶
顯示此說明訊息。
- --keep-function-for-static¶
即使在其他情況下會被省略,也要讓靜態變數保留封閉函式。
- --minimize, -z¶
建立 dSYM 檔案時使用此選項,將會抑制 .debug_inlines、.debug_pubnames 和 .debug_pubtypes 區段的發出,因為 dsymutil 目前有更好的替代方案:.apple_names 和 .apple_types。與
--update
選項一起使用時,此選項將會移除多餘的加速器表。
- --no-odr¶
不要使用 ODR(單一定義規則)來統一 C++ 類型。
- --no-output¶
在記憶體中進行連結,但不輸出結果檔案。
- --no-swiftmodule-timestamp¶
不要檢查 swiftmodule 檔案的時間戳記。
- --num-threads <threads>, -j <threads>¶
指定連結多個架構時,要使用的最大同時執行緒數 (
n
)。
- --object-prefix-map <prefix=remapped>¶
在處理之前重新映射物件檔案路徑(但不是原始程式碼路徑)。將此用於使用
-fdebug-prefix-map
重新映射模組快取位置的 Clang 物件;以協助 dsymutil 找到 Clang 模組快取。
- --oso-prepend-path <path>¶
指定要預先附加到所有偵錯符號物件檔案路徑的
路徑
。
- --out <filename>, -o <filename>¶
指定放置 dSYM 套件的替代
路徑
。預設的 dSYM 套件路徑是透過將.dSYM
附加到可執行檔名稱來建立的。
- -q, --quiet¶
啟用靜默模式並限制輸出。
- --remarks-drop-without-debug¶
刪除沒有有效偵錯位置的註解。如果沒有這個旗標,所有註解都會被保留。
- --remarks-output-format <format>¶
指定在序列化連結註解時要使用的格式。
- --remarks-prepend-path <path>¶
指定要預先附加到外部註解檔案路徑的目錄。
- --reproducer <mode>¶
指定重現器產生模式。有效的選項有「GenerateOnExit」、「GenerateOnCrash」、「Use」、「Off」。
- --statistics¶
列印有關每個物件檔案對連結偵錯資訊的貢獻統計資料。這會在連結後列印一個表格,其中包含物件檔案名稱、物件檔案中偵錯資訊的大小(以位元組為單位)以及對連結 dSYM 的貢獻大小(以位元組為單位)。表格會根據輸出大小排序,首先列出貢獻最大的物件檔案。
- -s, --symtab¶
傾印在 *可執行檔* 或物件檔案中找到的符號表並退出。
- -S¶
輸出文字組譯,而不是二進位 dSYM 夥伴檔案。
- --toolchain <toolchain>¶
將工具鏈嵌入 dSYM 套件的屬性列表中。
- -u, --update¶
更新現有的 dSYM 檔案以包含最新的加速器表和其他 DWARF 優化。此選項將重建「.apple_names」和「.apple_types」雜湊加速器表。
- --use-reproducer <path>¶
使用給定重現器路徑中的物件檔案。–reproducer=Use 的別名。
- --verbose¶
連結時顯示詳細資訊。
- --verify¶
在連結的 DWARF 除錯資訊上執行 DWARF 驗證器。
- -v, --version¶
顯示工具的版本。
- -y¶
將 *可執行檔* 視為 YAML 除錯映射,而不是可執行檔。
結束狀態¶
如果 DWARF 除錯資訊已成功連結,則 dsymutil 會傳回 0。否則,它會傳回 1。