1FIND-DEBUGINFO(1) User Commands FIND-DEBUGINFO(1)
2
3
4
6 find-debuginfo - finds debuginfo and processes it
7
9 find-debuginfo [OPTION]... [builddir]
10
12 automagically generates debug info and file lists
13
15 [--strict-build-id] [-g] [-r] [-m] [-i] [-n] [-q] [-v] [--keep-section
16 SECTION] [--remove-section SECTION] [--g-libs] [-j N] [--jobs N] [-o
17 debugfiles.list] [-S debugsourcefiles.list] [--run-dwz]
18 [--dwz-low-mem-die-limit N] [--dwz-max-die-limit N] [--dwz-sin‐
19 gle-file-mode] [--build-id-seed SEED] [--unique-debug-suffix SUFFIX]
20 [--unique-debug-src-base BASE] [[-l filelist]... [-p 'pattern'] -o de‐
21 buginfo.list] [builddir]
22
23 The -g flag says to use strip -g instead of full strip on DSOs or EXEs.
24 The --g-libs flag says to use strip -g instead of full strip ONLY on
25 DSOs. Options -g and --g-libs are mutually exclusive.
26
27 The -r flag says to use eu-strip --reloc-debug-sections.
28
29 Use --keep-section SECTION or --remove-section SECTION to explicitly
30 keep a (non-allocated) section in the main executable or explicitly re‐
31 move it into the .debug file. SECTION is an extended wildcard pattern.
32 Both options can be given more than once.
33
34 The --strict-build-id flag says to exit with failure status if any ELF
35 binary processed fails to contain a build-id note.
36
37 The -m flag says to include a .gnu_debugdata section in the main bi‐
38 nary.
39
40 The -i flag says to include a .gdb_index section in the .debug file.
41
42 The -n flag says to not recompute the build-id.
43
44 The -j, --jobs N option will spawn N processes to do the debuginfo ex‐
45 traction in parallel.
46
47 A single -o switch before any -l or -p switches simply renames the pri‐
48 mary output file from debugfiles.list to something else. A -o switch
49 that follows a -p switch or some -l switches produces an additional
50 output file with the debuginfo for the files in the -l filelist file,
51 or whose names match the -p pattern. The -p argument is an grep -E
52 -style regexp matching the a file name, and must not use anchors (^ or
53 $).
54
55 The --run-dwz flag instructs find-debuginfo to run the dwz utility if
56 available, and --dwz-low-mem-die-limit and --dwz-max-die-limit provide
57 detailed limits. See dwz(1) -l and -L option for details. Use
58 --dwz-single-file-mode to disable multi-file mode, see dwz(1) -m for
59 more details.
60
61 If --build-id-seed SEED is given then debugedit is called to update the
62 build-ids it finds adding the SEED as seed to recalculate the build-id
63 hash. This makes sure the build-ids in the ELF files are unique be‐
64 tween versions and releases of the same package. (Use --build-id-seed
65 "%{VERSION}-%{RELEASE}".)
66
67 If --unique-debug-suffix SUFFIX is given then the debug files created
68 for <FILE> will be named <FILE>-<SUFFIX>.debug. This makes sure .debug
69 are unique between package version, release and architecture. (Use
70 --unique-debug-suffix "-%{VERSION}-%{RELEASE}.%{_arch}".)
71
72 If --unique-debug-src-base BASE is given then the source directory will
73 be called /usr/debug/src/<BASE>. This makes sure the debug source dirs
74 are unique between package version, release and achitecture (Use
75 --unique-debug-src-base "%{name}-%{VERSION}-%{RELEASE}.%{_arch}")
76
77 The -q or --quiet flag silences all non-error output from the script.
78 The -v or --verbose flag add more output for all files processed. When
79 neither -q or -v is given then only output for each pass is given.
80
81 All file names in switches are relative to builddir ('.' if not given).
82
83
84
85find-debuginfo 5.0 July 2023 FIND-DEBUGINFO(1)