cmake:ExternalProject_Add() 不应用 cmake 参数
cmake: ExternalProject_Add() does not apply cmake arguments
我在cmake文件中构建外部库(glfw(时遇到问题:
[...]
ExternalProject_Add(glfw
PREFIX "${CMAKE_CURRENT_SOURCE_DIR}/glfw"
URL "https://github.com/glfw/glfw/releases/download/3.2.1/glfw-3.2.1.zip"
URL_HASH SHA256=b7d55e13e07095119e7d5f6792586dd0849c9fcdd867d49a4a5ac31f982f7326
CMAKE_ARGS "-DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF"
INSTALL_COMMAND ""
TEST_COMMAND ""
)
add_executable(test main.cpp)
add_dependencies(test glfw)
虽然这很好用,但给定的 cmake 参数-DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF
被忽略了。
根据 glfw 文档,参数应该禁用构建示例和测试。我只想构建库(目标:glfw(。
如果我尝试单独构建库
cmake -DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF
然后它按预期工作。
我也研究了cmake文档,但我无法进一步。
我做错了什么吗?您可以选择构建或不构建哪个目标吗?
参数CMAKE_ARGS
包含选项列表,而不是带有空格分隔选项的单个字符串。正确:
CMAKE_ARGS -DGLFW_BUILD_EXAMPLES=OFF -DGLFW_BUILD_TESTS=OFF
相关文章:
- 将库链接到另一个应用程序时,CMAKE 找不到库
- cmake:ExternalProject_Add() 不应用 cmake 参数
- 如何使用cmake和Visual Studio 2019编译简单的Windows应用程序?
- CMake导出的库-在客户端应用程序中找不到include/Lib路径
- 如何使用CMake在Windows上将应用程序入口点设置为main()C++?
- Windows10 上的 VS Code + WSL 应用程序上的 CMake 扩展
- 将Qt应用程序与CMake和Visual Studio链接起来
- 在使用 cmake 和 pybind11 构建示例应用程序时找不到 Python.h
- 如何在 MSYS2 中通过 CMake 构建 c++ Qt5 应用程序
- 从Visual Studio运行应用程序会导致错误(由CMake生成)
- 在构建 Android 应用程序时禁用 CMake 目标
- 如何在Windows应用程序中使用CMAKE获得管理员特权
- 链接错误时,使用CLION/CMAKE/MSVC 2015编译WIN32应用程序
- 基于CMAKE的CUDA应用程序的构建失败 - 没有传递给链接器的文件
- 为儿童项目应用CMAKE设置
- 使用 CMake 在 android 应用程序中C++ libcurl
- 使用 CMake 编译 SFML 应用程序
- 创建一个可部署的CMake动态SDL2应用程序
- 使用CMake设置应用程序图标
- CMake:运行链接命令时出错:%1不是有效的Win32应用程序