google / google/bloaty

What can add a lot of debug info in binaries?

Open
#223 1 comment 0 reactions 0 assignees View on GitHub
question
Dominant language
C++
Stars
5.5k
Forks
378
Avg merge
23h 54m
Merged PRs (30d)
6

Description

Hey guys,

How are you?

I have a project called ezored (github.com/ezored/ezored) and when i build a simple file in debug mode it add a lof of data that i see with bloaty tool. But this informations was added recently and i don't know what i changed in my cmake that add it to the compiled binaries:

This is from my private project that use ezored with some plus of c++ code only:

```
41.6% 32.5Mi 0.0% 0 [section .debug_info]
22.0% 17.2Mi 0.0% 0 [section .symtab]
9.0% 7.00Mi 0.0% 0 [section .debug_line]
6.8% 5.34Mi 0.0% 0 [section .debug_str]
4.0% 3.14Mi 0.0% 0 [section .debug_frame]
1.2% 985Ki 0.0% 0 [section .debug_ranges]
1.2% 958Ki 0.0% 0 [section .debug_abbrev]
0.5% 401Ki 0.0% 0 [section .debug_loc]
0.4% 355Ki 4.8% 355Ki [section .rodata]
0.2% 194Ki 2.6% 194Ki [section .ARM.extab]
```

More than 70% of the final binary has debug info.

And this is the original ezored data:

```
FILE SIZE VM SIZE
-------------- --------------
27.2% 6.13Mi 0.0% 0 [section .debug_info]
14.8% 3.33Mi 0.0% 0 [section .symtab]
11.5% 2.59Mi 0.0% 0 [section .debug_str]
10.8% 2.43Mi 0.0% 0 [section .debug_line]
3.2% 742Ki 0.0% 0 [section .debug_frame]
1.5% 353Ki 0.0% 0 [section .debug_loc]
1.2% 285Ki 0.0% 0 [section .debug_abbrev]
0.9% 205Ki 0.0% 0 [section .debug_ranges]
0.8% 178Ki 3.7% 178Ki [section .rodata]
0.5% 116Ki 2.4% 116Ki [section .rel.dyn]
0.3% 79.3Ki 1.6% 79.3Ki [section .gnu.hash]
0.3% 77.3Ki 1.6% 77.3Ki [section .ARM.extab]
0.3% 75.2Ki 1.6% 75.2Ki [section .plt]
0.3% 72.1Ki 1.5% 72.1Ki [section .hash]
0.3% 64.5Ki 1.3% 64.5Ki [section .ARM.exidx]
```

The first data are my other library that is a copy of ezored project, but with more c++ code but other things are the same.

What i can do wrong that add a lot of debug data more than the normal?

Thanks for any help.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.