Visual Studio 2005 - двоичный файл, созданный с помощью / DEBUG / OPT: REF намного больше, чем non-debug-build - PullRequest
1 голос
/ 15 февраля 2012

В нашем случае двоичный файл / DEBUG на 50% больше, двоичный файл, созданный с помощью / DEBUG / OPT: REF , все еще на 40% больше. Из ответов Visual Studio: отладочная информация в сборке релиза Я ожидал, что сборка релиза с отладочной информацией не должна быть намного больше. Чего нам не хватает?

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

Размеры:
22 МБ с / O2
35 МБ с / O2 / DEBUG
32 МБ с / O2 / DEBUG / OPT: REF

Ответы [ 3 ]

1 голос
/ 14 июня 2013

В соответствии с документацией VS2005 по адресу http://msdn.microsoft.com/en-us/library/xe4t6fc1(v=vs.80).aspx:

/ DEBUG изменяет значения по умолчанию для параметра / OPT с REF на NOREF и с ICF на NOICF (поэтому вам необходимо явно указать /OPT: REF или /OPT:ICF).

Таким образом, чтобы уменьшить размер, вы можете попытаться указать оба:

/O2 /DEBUG /OPT:REF /OPT:ICF
1 голос
/ 15 февраля 2012

Если бы он был написан на C ++, STD мог бы быть выполнен намного больше, если не был оптимизирован.Но я не уверен, что это так.Какого размера в байтах эти 50%?

0 голосов
/ 15 февраля 2012

Код, вероятно, не произведет такой большой двоичный файл. Несколько подсказок:

  • Используете ли вы статическую библиотеку вместо динамического связывания, в частности MFC DLL?
  • Имея большой набор ресурсов, а именно. значки, растровые изображения, строковые ресурсы, пользовательские ресурсы?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...