3
我想在我的CMake項目中禁用單個* .cpp文件的優化。我發現CMake提供了以下內容來實現這一點:CMake:如何禁用單個* .cpp文件的優化?
SET_SOURCE_FILES_PROPERTIES(${FILE} PROPERTIES COMPILE_FLAGS -O0)
但是,這似乎不適用於我。我生成了一個Visual Studio 2013項目,每當我更改爲'Release'或'RelWithDebInfo'時,它仍然會完全優化該文件,正如可以在屬性下看到的那樣。
不要緊,在上面的命令放置?我有多個cmake文件分佈在整個項目中。我將上述命令直接放在* .cpp文件添加到項目的cmake文件中。
或者有沒有其他的辦法告訴CMake的,這個文件應該沒有得到根本優化?
它應該工作。該命令應放置在調用add_executable()'/'add_library()'的同一個cmake文件中。另請參閱[set_source_files_properties]的文檔(https://cmake.org/cmake/help/v3.0/command/set_source_files_properties.html) – Tsyvarev
這會將-O0附加到編譯選項,但如果編譯版本不會你會在命令行中同時得到-O0和-O3? –