用cmake下载外部库:如何让用户选择?
Downloading external libraries with cmake: how let users choose?
我使用 CMake 下载调用到我的代码中的外部库(使用 External_project_add 命令)。但是,我想让用户选择是否要让 CMake 下载这些库,或者是否要手动安装它们并提供它们的路径。此外,我想让用户对每个库做出不同的选择。例如,他们可以:
- 下载所有外部库
- 什么都不下载
- 下载一个特定的库而不是另一个。
是否可以用 CMake 做到这一点?
非常感谢!
使用 option() 来控制通过 External_project_add 构建的内容,而不是使用 CMake 查找模块找到的内容。例如:
option( USE_SYSTEM_GDCM "Build using the installed system GDCM" OFF)
if (USE_SYSTEM_GDCM)
find_package(GDCM REQUIRED)
include(${GDCM_USE_FILE})
else (USE_SYSTEM_GDCM)
External_project_add( ... )
endif(USE_SYSTEM_GDCM)
我使用 CMake 下载调用到我的代码中的外部库(使用 External_project_add 命令)。但是,我想让用户选择是否要让 CMake 下载这些库,或者是否要手动安装它们并提供它们的路径。此外,我想让用户对每个库做出不同的选择。例如,他们可以:
- 下载所有外部库
- 什么都不下载
- 下载一个特定的库而不是另一个。
是否可以用 CMake 做到这一点?
非常感谢!
使用 option() 来控制通过 External_project_add 构建的内容,而不是使用 CMake 查找模块找到的内容。例如:
option( USE_SYSTEM_GDCM "Build using the installed system GDCM" OFF)
if (USE_SYSTEM_GDCM)
find_package(GDCM REQUIRED)
include(${GDCM_USE_FILE})
else (USE_SYSTEM_GDCM)
External_project_add( ... )
endif(USE_SYSTEM_GDCM)