| dsymutil - manipulate archived DWARF debug symbol files |
| ======================================================= |
| |
| SYNOPSIS |
| -------- |
| |
| | :program:`dsymutil` [*options*] *executable* |
| |
| DESCRIPTION |
| ----------- |
| |
| :program:`dsymutil` links the DWARF debug information found in the object files |
| for an executable *executable* by using debug symbols information contained in |
| its symbol table. By default, the linked debug information is placed in a |
| ``.dSYM`` bundle with the same name as the executable. |
| |
| OPTIONS |
| ------- |
| .. option:: --arch=<arch> |
| |
| Link DWARF debug information only for specified CPU architecture types. |
| Architectures may be specified by name. When using this option, an error will |
| be returned if any architectures can not be properly linked. This option can |
| be specified multiple times, once for each desired architecture. All CPU |
| architectures will be linked by default and any architectures that can't be |
| properly linked will cause :program:`dsymutil` to return an error. |
| |
| .. option:: --dump-debug-map |
| |
| Dump the *executable*'s debug-map (the list of the object files containing the |
| debug information) in YAML format and exit. Not DWARF link will take place. |
| |
| .. option:: -f, --flat |
| |
| Produce a flat dSYM file. A ``.dwarf`` extension will be appended to the |
| executable name unless the output file is specified using the -o option. |
| |
| |
| .. option:: -z, --minimize |
| |
| When used when creating a dSYM file, this option will suppress the emission of |
| the .debug_inlines, .debug_pubnames, and .debug_pubtypes sections since |
| dsymutil currently has better equivalents: .apple_names and .apple_types. When |
| used in conjunction with --update option, this option will cause redundant |
| accelerator tables to be removed. |
| |
| .. option:: --no-odr |
| |
| Do not use ODR (One Definition Rule) for uniquing C++ types. |
| |
| .. option:: --no-output |
| |
| Do the link in memory, but do not emit the result file. |
| |
| .. option:: --no-swiftmodule-timestamp |
| |
| Don't check the timestamp for swiftmodule files. |
| |
| .. option:: -j <n>, --num-threads=<n> |
| |
| Specifies the maximum number (``n``) of simultaneous threads to use when |
| linking multiple architectures. |
| |
| .. option:: -o <filename> |
| |
| Specifies an alternate ``path`` to place the dSYM bundle. The default dSYM |
| bundle path is created by appending ``.dSYM`` to the executable name. |
| |
| .. option:: --oso-prepend-path=<path> |
| |
| Specifies a ``path`` to prepend to all debug symbol object file paths. |
| |
| .. option:: --papertrail |
| |
| When running dsymutil as part of your build system, it can be desirable for |
| warnings to be part of the end product, rather than just being emitted to the |
| output stream. When enabled warnings are embedded in the linked DWARF debug |
| information. |
| |
| .. option:: -s, --symtab |
| |
| Dumps the symbol table found in *executable* or object file(s) and exits. |
| |
| .. option:: --toolchain |
| |
| Embed the toolchain in the dSYM bundle's property list. |
| |
| .. option:: -u, --update |
| |
| Update an existing dSYM file to contain the latest accelerator tables and |
| other DWARF optimizations. This option will rebuild the '.apple_names' and |
| '.apple_types' hashed accelerator tables. |
| |
| .. option:: -v, --verbose |
| |
| Display verbose information when linking. |
| |
| .. option:: --version |
| |
| Display the version of the tool. |
| |
| .. option:: -y |
| |
| Treat *executable* as a YAML debug-map rather than an executable. |
| |
| EXIT STATUS |
| ----------- |
| |
| :program:`dsymutil` returns 0 if the DWARF debug information was linked |
| successfully. Otherwise, it returns 1. |
| |
| SEE ALSO |
| -------- |
| |
| :manpage:`llvm-dwarfdump(1)` |