Несмотря на то, что я знаю, что, вероятно, мне захочется задать этот вопрос, я все равно продолжу и спрошу его, так как это буквально заводит меня в орехи. Я надеюсь, что, возможно, у вас есть кое-какие соображения по этому вопросу.WINAPI C/C++ -> почему бинарный размер резко увеличился? (Переключение с VS2013 на VS 2015)
Компиляция проекта MS по умолчанию WIN32 по умолчанию («не пустой») на VS2013 дает двоичный размер ~ 16kb. Компиляция того же проекта на VS2015 Update3 дает двоичный размер ~ 105kb (более 6x!).
Я дважды и тройной проверил параметры последней командной строки, переданные в cl.exe и link.exe, и они выглядят идентичными (параметры проекта). Даже изменения в настройках проекта - предпочитают размер по скорости - не помогают (двоичные все еще 105kb). Какого черта здесь? Я даже установил VS2015 на второй компьютер, чтобы исключить «дефектную» установку - те же результаты (105kb). Обращаясь за помощью, так как я закончил в этот момент.
Я заметил, что при запуске 'DUMPBIN/HEADERS' на двоичном файле, составленном в VS2015, появился новый раздел PE, называемый' .gfids', который не был в VS2013 или предыдущих версиях. Может ли это так? –
@WeatherVane: Даже если бы это было так, это было бы в обоих двоичных файлах, поскольку OP использовал идентичные компиляторы и компоновщики. Тем не менее, по умолчанию отладочная информация никогда не компилируется в исполняемые изображения. – IInspectable
Я только что собрал «Hello World!» программа с MSVC 2009 (48k) и MSVC 2015 (98k), как из командной строки, так и с аналогичным MAKEFILE, как на Win 7, так и 32-разрядные исполняемые файлы. Хммм. –