Какие флаги вы рекомендуете для конфигурации релиза в проекте MSVC - PullRequest
2 голосов
/ 08 января 2009

Я проверяю флаги, которые мы имеем для наших проектов MSVC, и я не могу получить достаточно документации по следующим функциям:

  • Использовать генерацию временного кода связи (/ ltcg)
  • включить связывание на уровне функций (/ Гр)
  • Удаление данных без ссылок (/ OPT: REF)
  • Удалить избыточные COMDAT (/ OPT: ICF)
  • Оптимизировать для Windows98 Нет (/ OPT: NOWIN98)
  • Включить объединение строк (/ GF)

мы используем отдельные сборки отладки / выпуска, поэтому меня интересуют в основном флаги для выпуска. приветствуются пояснения об этих флагах и их взаимосвязи, а также о том, какие из них вы используете в своих собственных проектах!

Ответы [ 2 ]

2 голосов
/ 08 января 2009

В значительной степени это зависит от того, что вы ищете в вашей сборке, например, есть ли у вас отдельный выпуск и отладочная сборка, как обсуждалось здесь . Если у вас комбинированная сборка отладки / релиза, вам понадобится связывание на уровне функций, чтобы использовать редактирование и продолжить в отладчике, что и нужно большинству разработчиков.

Из других, они в основном уменьшают размер вашего исполняемого файла. Например, если у вас есть два одинаковых строковых литерала: char * a = "счастливых праздников", * b = "счастливых праздников", они будут находиться в одном и том же фрагменте памяти, когда включен пул строк.

1 голос
/ 08 января 2009

Включите PDB

...