2017-11-03 02:44:54 +08:00
|
|
|
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
|
|
|
|
-------
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: --arch=<arch>
|
2017-11-03 02:44:54 +08:00
|
|
|
|
|
|
|
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.
|
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: --dump-debug-map
|
2017-11-03 02:44:54 +08:00
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
Dump the *executable*'s debug-map (the list of the object files containing the
|
2017-11-03 02:44:54 +08:00
|
|
|
debug information) in YAML format and exit. Not DWARF link will take place.
|
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: -f, --flat
|
2017-11-03 02:44:54 +08:00
|
|
|
|
|
|
|
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.
|
|
|
|
|
2018-01-31 03:54:16 +08:00
|
|
|
|
|
|
|
.. 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
|
2018-02-08 18:48:54 +08:00
|
|
|
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.
|
2018-01-31 03:54:16 +08:00
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: --no-odr
|
2017-11-03 02:44:54 +08:00
|
|
|
|
|
|
|
Do not use ODR (One Definition Rule) for uniquing C++ types.
|
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: --no-output
|
2017-11-03 02:44:54 +08:00
|
|
|
|
|
|
|
Do the link in memory, but do not emit the result file.
|
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: --no-swiftmodule-timestamp
|
2017-11-03 02:44:54 +08:00
|
|
|
|
|
|
|
Don't check the timestamp for swiftmodule files.
|
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: -j <n>, --num-threads=<n>
|
2017-11-03 02:44:54 +08:00
|
|
|
|
|
|
|
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.
|
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: --oso-prepend-path=<path>
|
2017-11-03 02:44:54 +08:00
|
|
|
|
|
|
|
Specifies a ``path`` to prepend to all debug symbol object file paths.
|
|
|
|
|
2018-04-02 18:40:43 +08:00
|
|
|
.. 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.
|
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: -s, --symtab
|
2017-11-03 02:44:54 +08:00
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
Dumps the symbol table found in *executable* or object file(s) and exits.
|
2017-11-03 02:44:54 +08:00
|
|
|
|
2018-03-08 18:39:12 +08:00
|
|
|
.. option:: --toolchain
|
|
|
|
|
|
|
|
Embed the toolchain in the dSYM bundle's property list.
|
|
|
|
|
2018-02-08 18:48:54 +08:00
|
|
|
.. 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.
|
|
|
|
|
2017-11-07 00:52:05 +08:00
|
|
|
.. option:: -v, --verbose
|
2017-11-03 02:44:54 +08:00
|
|
|
|
|
|
|
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)`
|