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', 'Default' and 'None'.
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.  No
35              DWARF link will take place.
36
37       --fat64
38              Use a 64-bit header when emitting universal binaries.
39
40       --flat, -f
41              Produce a flat dSYM file. A .dwarf extension will be appended to
42              the executable name unless the output file  is  specified  using
43              the -o option.
44
45       --gen-reproducer
46              Generate  a  reproducer  consisting  of  the input object files.
47              Alias for --reproducer=GenerateOnExit.
48
49       --help, -h
50              Print this help output.
51
52       --keep-function-for-static
53              Make a static variable keep the enclosing function  even  if  it
54              would have been omitted otherwise.
55
56       --minimize, -z
57              When  used  when creating a dSYM file, this option will suppress
58              the emission of the .debug_inlines,  .debug_pubnames,  and  .de‐
59              bug_pubtypes sections since dsymutil currently has better equiv‐
60              alents: .apple_names and .apple_types. When used in  conjunction
61              with --update option, this option will cause redundant accelera‐
62              tor tables to be removed.
63
64       --no-odr
65              Do not use ODR (One Definition Rule) for uniquing C++ types.
66
67       --no-output
68              Do the link in memory, but do not emit the result file.
69
70       --no-swiftmodule-timestamp
71              Don't check the timestamp for swiftmodule files.
72
73       --num-threads <threads>, -j <threads>
74              Specifies the maximum number (n) of simultaneous threads to  use
75              when linking multiple architectures.
76
77       --object-prefix-map <prefix=remapped>
78              Remap object file paths (but no source paths) before processing.
79              Use this for Clang objects where the module cache  location  was
80              remapped  using  -fdebug-prefix-map;  to  help dsymutil find the
81              Clang module cache.
82
83       --oso-prepend-path <path>
84              Specifies a path to prepend to  all  debug  symbol  object  file
85              paths.
86
87       --out <filename>, -o <filename>
88              Specifies  an  alternate  path to place the dSYM bundle. The de‐
89              fault dSYM bundle path is created by appending .dSYM to the exe‐
90              cutable name.
91
92       --papertrail
93              When  running  dsymutil  as part of your build system, it can be
94              desirable for warnings to be part of  the  end  product,  rather
95              than just being emitted to the output stream. When enabled warn‐
96              ings are embedded in the linked DWARF debug information.
97
98       --remarks-drop-without-debug
99              Drop remarks without valid debug locations. Without this  flags,
100              all remarks are kept.
101
102       --remarks-output-format <format>
103              Specify  the  format  to be used when serializing the linked re‐
104              marks.
105
106       --remarks-prepend-path <path>
107              Specify a directory to prepend the paths of the external  remark
108              files.
109
110       --reproducer <mode>
111              Specify  the reproducer generation mode. Valid options are 'Gen‐
112              erateOnExit', 'GenerateOnCrash', 'Use', 'Off'.
113
114       --statistics
115              Print statistics about the contribution of each object  file  to
116              the  linked  debug  info. This prints a table after linking with
117              the object file name, the size of the debug info in  the  object
118              file  (in  bytes)  and  the  size  contributed (in bytes) to the
119              linked dSYM. The table is sorted by the output size listing  the
120              object files with the largest contribution first.
121
122       --symbol-map <bcsymbolmap>
123              Update the existing dSYMs inplace using symbol map specified.
124
125       -s, --symtab
126              Dumps the symbol table found in executable or object file(s) and
127              exits.
128
129       -S     Output textual assembly instead of a binary dSYM companion file.
130
131       --toolchain <toolchain>
132              Embed the toolchain in the dSYM bundle's property list.
133
134       -u, --update
135              Update an existing dSYM file to contain the  latest  accelerator
136              tables  and  other DWARF optimizations. This option will rebuild
137              the '.apple_names' and '.apple_types' hashed accelerator tables.
138
139       --use-reproducer <path>
140              Use the object files from the given reproducer path.  Alias  for
141              --reproducer=Use.
142
143       --verbose
144              Display verbose information when linking.
145
146       --verify
147              Run the DWARF verifier on the linked DWARF debug info.
148
149       -v, --version
150              Display the version of the tool.
151
152       -y     Treat executable as a YAML debug-map rather than an executable.
153

EXIT STATUS

155       dsymutil  returns  0 if the DWARF debug information was linked success‐
156       fully. Otherwise, it returns 1.
157

SEE ALSO

159       llvm-dwarfdump(1)
160

AUTHOR

162       Maintained by the LLVM Team (https://llvm.org/).
163
165       2003-2023, LLVM Project
166
167
168
169
17017                                2023-11-28                       DSYMUTIL(1)
Impressum