Кто-нибудь, как узнать, какие флаги сборки используются CMake с gcc в конфигурации отладки и выпуска по умолчанию?
Если один из приведенных ниже ответов устраняет вашу проблему, вы должны принять его (щелкните галочку рядом с соответствующим ответом). Это делает две вещи. Это позволяет всем узнать, что ваша проблема была решена к вашему удовлетворению, и дает человеку, который помогает вам, признательность за помощь. Глянь сюда для полного объяснения.





Существует cmake-gui, который напечатает вам все переменные, которые используются в вашем текущем проекте.
Если вы находитесь в процессе сборки, вы можете выполнить make VERBOSE=1, чтобы увидеть фактические команды (включая, конечно, флаги)
Превращаю мои комментарии в ответ
Значения по умолчанию для GNU определены в Modules/Compiler/GNU.cmake:
# Initial configuration flags. string(APPEND CMAKE_${lang}_FLAGS_INIT " ") string(APPEND CMAKE_${lang}_FLAGS_DEBUG_INIT " -g") string(APPEND CMAKE_${lang}_FLAGS_MINSIZEREL_INIT " -Os -DNDEBUG") string(APPEND CMAKE_${lang}_FLAGS_RELEASE_INIT " -O3 -DNDEBUG") string(APPEND CMAKE_${lang}_FLAGS_RELWITHDEBINFO_INIT " -O2 -g -DNDEBUG")
Но остальное действительно зависит от платформы / компилятора, которые вы используете. Итак, вам нужно запустить проект CMake «hello world», чтобы увидеть, что используется (см. Ответ @ hellow).
Ссылки
Связанный "Какая переменная для флагов компилятора функции CMake ADD_LIBRARY?". Это действительно зависит от используемой платформы / компилятора. Итак, вам нужно запустить проект CMake «hello world», чтобы увидеть, что используется.