【问题标题】:cMake/cTest: Check if code compilescMake/cTest:检查代码是否编译
【发布时间】:2013-11-06 16:32:54
【问题描述】:

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

有没有机会将此变量传递给模块 CheckCXXSourceCompiles?

就像做这样的测试:

check_cxx_source_compiles("int main() { return 0;}" DUMMY) 

但显然对所有${source_files}

【问题讨论】:

    标签: c++ c++11 cmake ctest


    【解决方案1】:

    看看try_compile命令:

    try_compile(COMPILE_SUCCEEDED ${CMAKE_BINARY_DIR}/compile_tests my_test_src.cpp)
    
    if(COMPILE_SUCCEEDED)
      message("Success!")
    endif()
    

    请注意,这仅对编译检查特定编译器功能的小型测试程序非常有用。找出您的主代码库是否编译的最快方法仍然是实际构建它。在配置阶段真的不需要担心这个。

    【讨论】:

    • 谢谢。我找到了另一个基于cTest的解决方案。
    猜你喜欢
    • 1970-01-01
    • 2013-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-30
    • 1970-01-01
    • 2011-06-14
    相关资源
    最近更新 更多