Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用cmake下载外部库:如何让用户选择?_Cmake - Fatal编程技术网

使用cmake下载外部库:如何让用户选择?

使用cmake下载外部库:如何让用户选择?,cmake,Cmake,我使用CMake下载调用到代码中的外部库(使用external\u project\u add命令)。但是,我想让用户选择是让CMake下载这些库,还是手动安装并提供指向这些库的路径。此外,我想让用户为每个库做出不同的选择。例如,他们可以: 下载所有外部库 不下载 下载一个特定库,但不下载另一个库 有没有可能用CMake实现这一点 多谢各位 使用option()控制通过外部\u project\u add生成的内容,而不是使用CMake find modules找到的内容。例如: optio

我使用CMake下载调用到代码中的外部库(使用external\u project\u add命令)。但是,我想让用户选择是让CMake下载这些库,还是手动安装并提供指向这些库的路径。此外,我想让用户为每个库做出不同的选择。例如,他们可以:

  • 下载所有外部库
  • 不下载
  • 下载一个特定库,但不下载另一个库
有没有可能用CMake实现这一点

多谢各位

使用option()控制通过外部\u project\u add生成的内容,而不是使用CMake find modules找到的内容。例如:

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实现这一点?对使用option()控制通过外部项目添加生成的内容,而不是使用cmake find modules生成的内容。@drescherjm:您介意将您的注释转换为Aleph可以接受的答案吗?否则这个问题看起来没有答案。