C++ cMake/cTest:检查代码是否编译

C++ cMake/cTest:检查代码是否编译,c++,c++11,cmake,ctest,C++,C++11,Cmake,Ctest,我想检查我的代码是否编译。在我的cMakeList.txt中,我使用file() 是否有机会将此变量传递给模块CheckCXXSourceCompiles 这就像做一个这样的测试: check_cxx_source_compiles("int main() { return 0;}" DUMMY) 但是很明显,对于所有的${source_files}请查看以下命令: 请注意,这只在编译检查特定编译器功能的小测试程序时才真正有用。确定主代码库是否编译的最快方法是实际构建它。在配置阶段真的不需要

我想检查我的代码是否编译。在我的cMakeList.txt中,我使用
file()

是否有机会将此变量传递给模块CheckCXXSourceCompiles

这就像做一个这样的测试:

check_cxx_source_compiles("int main() { return 0;}" DUMMY) 
但是很明显,对于所有的
${source_files}

请查看以下命令:


请注意,这只在编译检查特定编译器功能的小测试程序时才真正有用。确定主代码库是否编译的最快方法是实际构建它。在配置阶段真的不需要担心这个问题。

谢谢。我找到了另一个基于cTest的解决方案。
try_compile(COMPILE_SUCCEEDED ${CMAKE_BINARY_DIR}/compile_tests my_test_src.cpp)

if(COMPILE_SUCCEEDED)
  message("Success!")
endif()