Один из проектов, над которым я работаю, зависит от другой, очень большой внутренней библиотеки.
Файл CMake для моего проекта создается на основе файла библиотеки CMake, в котором указываются параметры компилятора, переключатели компилятора и так далее. Старая библиотека указывала компилятор как gcc 4.3.2, а новая как gcc 4.7.0
Когда мы перешли на новую версию библиотеки, двоичные файлы, созданные для моего проекта, выросли примерно в 10 раз — с 35 МБ до 123 МБ.
Выполнение nm для файла .a показало, что одни и те же файлы .o создают файл .a для обеих версий библиотеки.
Однако, похоже, что в файле .a, созданном с новой версией библиотеки, на ~ 30% больше символов (по подсчету wc -l).
Какие могут быть потенциальные причины такого увеличения в двоичном размере? Я понимаю, что их может быть много, но я совершенно невежествен — любые подсказки помогут.
Задача ещё не решена.
Других решений пока нет …