При компиляции с g ++ создает дополнительный раздел почти для каждой функции.
Это происходит на linux
с elf64
исполняемый файл.
К примеру:
text._ZN12MemoryMapper11SetUpMemoryEP11KernelStart
Как я могу сказать g ++ выдавать весь код в .text, чтобы был только один раздел .text
Это происходит с разделами -ffunction
И разделы остаются даже после
objcopy -S file.elf striped
==================================================
Дополнительная информация:
CXXFLAGS = -g -O0 -ffreestanding -fno-rtti -fno-exceptions -fno-asynchronous-unwind-tables -std=c++11 $(INCLUDES)
g++ version = gcc (GCC) 5.1.0
text._ZN12MemoryMapper11SetUpMemoryEP11KernelStart
Это в соответствии функция с смутная связь.
Вы можете избежать создания таких разделов для встроенных функций, не имея никаких встроенных функций в вашем источнике. Может быть опция отключения генерации кода для встроенных функций, но я ее не нашел.
Обратите внимание, что отключение этого, как правило, пустая трата времени: они ничего не повредят, и требуются, если у вас есть несколько модулей компиляции, или вы получите либо ошибки ссылок, либо двоичный раздув.