Сегодня я обнаружил, что скомпилированная статическая библиотека, над которой я работаю, намного больше в режиме Release, чем в Debug. Я нашел это очень удивительным, поскольку в большинстве случаев происходит прямо противоположное (насколько я могу судить).
Размер в режиме отладки немного превышает 3 МБ (это довольно большой проект), но в выпуске он увеличивается до 6,5 МБ. Может кто подскажет, в чем может быть причина этого? Я использую обычные настройки Visual Studio (2008) для проекта статической библиотеки, почти ничего не изменил в настройках конфигурации сборки. В выпуске я использую / O2, а для параметра «Размер или скорость предпочтения» установлено значение «Ни то, ни другое». Может ли / O2 («Максимизировать скорость») конечный .lib быть намного больше, чем отладочная версия со всей отладочной информацией в ней?
РЕДАКТИРОВАТЬ: Дополнительная информация:
Отладка:
- оптимизация всей программы: Нет
- включить связывание на уровне функций: Нет
Выпуск:
- Оптимизация всей программы: Включить генерацию кода во время компоновки
- Включить компоновку на уровне функций: Да