小编Bra*_*edy的帖子

安装EXPORT需要来自子项目的目标

我正在尝试编写一个cmake脚本来安装我正在处理的项目.这部分是必要的install(EXPORT LIB_EXPORTS ...)地方LIB_EXPORTS是我一直在使用我的各种出口资产install(TARGETS ...).

我有一个superbuild结构,用于add_subdirectory构建我的项目所依赖的一些项目(SDL2,CivetWeb).

我的问题是,当我target_link_libraries用来添加子项目的链接(来自SDL2的SDL2-static,来自CivetWeb的c-library)时,cmake抱怨这些依赖关系不在导出集中.

CMake Error: install(EXPORT "LIB_EXPORTS" ...) includes target "sc2api" which requires target "c-library" that is not in the export set.
CMake Error: install(EXPORT "LIB_EXPORTS" ...) includes target "sc2renderer" which requires target "SDL2-static" that is not in the export set.
Run Code Online (Sandbox Code Playgroud)

我知道将目标添加到导出集的唯一方法是使用install(TARGETS ... EXPORT LIB_EXPORTS)但我们无法安装此子目录尚未创建的目标.我可以install(FILES ... EXPORT LIB_EXPORTS)找到确定库文件生成的位置,但我觉得这会安装两次(一次在项目子目录中的CMakeLists.txt,一次在这里).坦率地说,我不确定为什么包含这些是必要的,因为库应该静态链接到我的项目中的目标.

我的问题:

  1. 我应该如何在导出集中包含这些外部目标?
  2. 如果我不这样做,安装导出集的正确方法是什么?
  3. 奖金问题:这些子项目会自动将其安装目标添加到项目的安装目标中.这有必要吗?如果不是,我该如何禁用它?

cmake

12
推荐指数
1
解决办法
930
查看次数

如何在python中执行n路方差分析?

我想在python中执行N向ANOVA(特别是4向),但是我所看到的大部分内容都集中在一种或两种方式ANOVA上。我对R一无所知,所以我宁愿不必在那里迁移。

statistics python-3.x

5
推荐指数
1
解决办法
4783
查看次数

标签 统计

cmake ×1

python-3.x ×1

statistics ×1