c++ - CMake add_executable 在另一个目录

标签 c++ cmake

<分区>

我正在进行大量测试以验证每个库是否正确链接,然后对我的代码的功能进行一些测试。

我想在目录 project/build/tests 中有 X 个不同的可执行文件 我希望我的程序在 project/build 中构建

cmake_minimum_required(VERSION 3.0)
project(ProjectName)
# Linking library ...
add_executable(${PROJECT_NAME} ${SRC_LIST} ${INCLUDE_LIST})

直到这里,一切都很好并且可以正常工作,但是我不知道如何告诉 cmake 在另一个目录中创建我的测试,因为这不起作用

add_executable(tests/OpenMP_Check tests/openmp.cpp)

我的项目有这个架构:

项目:

  • 来源
  • 包括
  • 图书馆
  • build
    • 测试
  • 测试

简而言之:我如何要求 CMake 在另一个目录中创建我的测试?

最佳答案

感谢 arrowd 我设法用这些线做到了

add_executable(OpenMP_Check tests/openmp.cpp)
set_target_properties(OpenMP_Check PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/tests")

在寻找使用“set_target_properties”的方法后(老实说 CMake 的文档是不可读的)我发现了这个线程,这使得这个问题重复了。 how do I make cmake output into a 'bin' dir?

关于c++ - CMake add_executable 在另一个目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50301919/

相关文章:

c++ - 使用哪个 - "operator new"或 "operator new[]"- 在 C++ 中分配一 block 原始内存?

c++如何使用Curl多接口(interface)连续循环

c++ - 任务计划程序 : How to schedule a task to execute at login

windows - 如何在 Windows 上通过 Python 以编程方式为 CMake 配置编译器?

boost - 为什么 cmake 会忽略 Boost_NO_BOOST_CMAKE 环境变量?

c++ - 使用 Cmake 在 Eclipse IDE 项目中索引 Qt5

c++ - 在 Qt4 中创建可调整大小的侧边栏

c++ - CMake:用于发布版本的平台独立二进制剥离

cmake - 构建cmake静态库

c++ - 使用 std::string 迭代器查找它的字符串的开始和结束