1DSYMUTIL(1)                          LLVM                          DSYMUTIL(1)
2
3
4

NAME

6       dsymutil - manipulate archived DWARF debug symbol files
7

SYNOPSIS

9       dsymutil [options] executable
10
11

DESCRIPTION

13       dsymutil  links  the  DWARF debug information found in the object files
14       for an executable executable by using debug  symbols  information  con‐
15       tained in its symbol table. By default, the linked debug information is
16       placed in a .dSYM bundle with the same name as the executable.
17

OPTIONS

19       --accelerator=<accelerator type>
20              Specify the desired type of accelerator table. Valid options are
21              'Apple', 'Dwarf' and 'Default'.
22
23       --arch <arch>
24              Link DWARF debug information only for specified CPU architecture
25              types.  Architectures may be specified by name. When using  this
26              option,  an  error will be returned if any architectures can not
27              be properly linked.   This  option  can  be  specified  multiple
28              times, once for each desired architecture. All CPU architectures
29              will be linked by default and any architectures  that  can't  be
30              properly linked will cause dsymutil to return an error.
31
32       --dump-debug-map
33              Dump  the  executable's  debug-map (the list of the object files
34              containing the debug information) in YAML format and  exit.  Not
35              DWARF link will take place.
36
37       --flat, -f
38              Produce a flat dSYM file. A .dwarf extension will be appended to
39              the executable name unless the output file  is  specified  using
40              the -o option.
41
42       --gen-reproducer
43              Generate a reproducer consisting of the input object files.
44
45       --help, -h
46              Print this help output.
47
48       --minimize, -z
49              When  used  when creating a dSYM file, this option will suppress
50              the emission of the .debug_inlines,  .debug_pubnames,  and  .de‐
51              bug_pubtypes sections since dsymutil currently has better equiv‐
52              alents: .apple_names and .apple_types. When used in  conjunction
53              with --update option, this option will cause redundant accelera‐
54              tor tables to be removed.
55
56       --no-odr
57              Do not use ODR (One Definition Rule) for uniquing C++ types.
58
59       --no-output
60              Do the link in memory, but do not emit the result file.
61
62       --no-swiftmodule-timestamp
63              Don't check the timestamp for swiftmodule files.
64
65       --num-threads <threads>, -j <threads>
66              Specifies the maximum number (n) of simultaneous threads to  use
67              when linking multiple architectures.
68
69       --object-prefix-map <prefix=remapped>
70              Remap object file paths (but no source paths) before processing.
71              Use this for Clang objects where the module cache  location  was
72              remapped  using  -fdebug-prefix-map;  to  help dsymutil find the
73              Clang module cache.
74
75       --oso-prepend-path <path>
76              Specifies a path to prepend to  all  debug  symbol  object  file
77              paths.
78
79       --out <filename>, -o <filename>
80              Specifies  an  alternate  path to place the dSYM bundle. The de‐
81              fault dSYM bundle path is created by appending .dSYM to the exe‐
82              cutable name.
83
84       --papertrail
85              When  running  dsymutil  as part of your build system, it can be
86              desirable for warnings to be part of  the  end  product,  rather
87              than just being emitted to the output stream. When enabled warn‐
88              ings are embedded in the linked DWARF debug information.
89
90       --remarks-output-format <format>
91              Specify the format to be used when serializing  the  linked  re‐
92              marks.
93
94       --remarks-prepend-path <path>
95              Specify  a directory to prepend the paths of the external remark
96              files.
97
98       --statistics
99              Print statistics about the contribution of each object  file  to
100              the  linked  debug  info. This prints a table after linking with
101              the object file name, the size of the debug info in  the  object
102              file  (in  bytes)  and  the  size  contributed (in bytes) to the
103              linked dSYM. The table is sorted by the output size listing  the
104              object files with the largest contribution first.
105
106       --symbol-map <bcsymbolmap>
107              Update the existing dSYMs inplace using symbol map specified.
108
109       -s, --symtab
110              Dumps the symbol table found in executable or object file(s) and
111              exits.
112
113       -S     Output textual assembly instead of a binary dSYM companion file.
114
115       --toolchain <toolchain>
116              Embed the toolchain in the dSYM bundle's property list.
117
118       -u, --update
119              Update an existing dSYM file to contain the  latest  accelerator
120              tables  and  other DWARF optimizations. This option will rebuild
121              the '.apple_names' and '.apple_types' hashed accelerator tables.
122
123       --use-reproducer <path>
124              Use the object files from the given reproducer path.
125
126       --verbose
127              Display verbose information when linking.
128
129       --verify
130              Run the DWARF verifier on the linked DWARF debug info.
131
132       -v, --version
133              Display the version of the tool.
134
135       -y     Treat executable as a YAML debug-map rather than an executable.
136

EXIT STATUS

138       dsymutil returns 0 if the DWARF debug information was  linked  success‐
139       fully. Otherwise, it returns 1.
140

SEE ALSO

142       llvm-dwarfdump(1)
143

AUTHOR

145       Maintained by the LLVM Team (https://llvm.org/).
146
148       2003-2023, LLVM Project
149
150
151
152
15312                                2023-07-20                       DSYMUTIL(1)
Impressum