automake выходные двоичные файлы больше, чем скомпилированные бины командной строки - PullRequest
3 голосов
/ 09 января 2012

Для небольшого проекта, который я разрабатываю, я использовал простую компиляцию через командную строку.Однако, когда он стал больше, я решил изучить и использовать autoconf и automake для его компиляции.

После некоторой настройки я успешно собрал с помощью automake.Однако я заметил, что размер выходного двоичного файла был больше, чем при использовании g ++ из командной строки.Я пытался использовать статические и динамические библиотеки, и результат был одинаковым.

Я также пробовал простой мир hello, и он был больше с automake, чем с компиляцией из командной строки.

ТакЯ попытался запустить objdump -h: скомпилированная командная строка возвратила 27 разделов, а с другой стороны, скомпилированный automake вернул те же 27 разделов плюс 7 разделов, называемых debug_aranges, debug_info, debug_abbrev, debug_line, debug_loc, debug_ranges.Так что я, очевидно, склонен думать, что это что-то связанное с отладкой.

Итак, каждый знает, для чего эти разделы, если они необходимы и как от них избавиться, чтобы исполняемые файлы были меньше для распространения.

1 Ответ

6 голосов
/ 09 января 2012

Просто вызовите make install-strip при установке двоичных файлов, а install удалит их во время процесса установки.

...