我正在编写一个包含库本身和示例的库,并且我正在使用 CMake:
cmake_minimum_required(VERSION 3.6)
add_executable (example main.cpp)
install(DIRECTORY include DESTINATION include PATTERN ".DS_Store" EXCLUDE)
当我跑步时cmake --build . --target install
- 它编译example
目标并进行安装include
目录
我想排除建筑物example
目标并仅进行include
构建时的目录安装install
目标和建设example
如果没有任何特殊目标运行:
在这里我想要example
to be NOT built:
cmake --build . --target install
在这里我想要example
to be built:
cmake --build .
我应该如何更改我的 CMakeLists.txt 以使其按我想要的方式工作?
你不能排除single安装时的 CMake 目标。
问题是“安装”目标可能仅依赖于“全部”(default) 目标。
虽然您可以删除“安装”->“全部”依赖项(通过设置CMAKE_SKIP_INSTALL_ALL_DEPENDENCY https://cmake.org/cmake/help/v3.0/variable/CMAKE_SKIP_INSTALL_ALL_DEPENDENCY.html变量),你不能为“安装”添加另一个依赖项.
所以,在安装之前
cmake --build . --target install
要么执行
cmake --build .
or 不构建任何东西(甚至是您无论如何都想构建的库)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)