gpt4 book ai didi

cmake - 在主项目配置期间如何配置ExternalProject?

转载 作者:行者123 更新时间:2023-12-04 01:50:53 25 4
gpt4 key购买 nike

CMake的ExternalProject可以定义如何下载,配置,构建和安装外部项目。其所有步骤将在构建时执行。

我想在配置主项目期间执行外部项目的配置步骤。完成外部项目配置后,可以使用导入目标的描述,以便可以使用find_package()功能加载外部项目。

是否可以在配置时建立一些目标?

最佳答案

ExternalProject只是要执行的一系列步骤。因此,您可以使用它的两个实例:


在主项目的配置阶段将构建ExternalProject_Add()调用。例如,如that question中所述:


other_project / CMakeLists.txt:

project(other_project)
include(ExternalProject)

ExternalProject_Add(<project_name> <options...>
BUILD_COMMAND "" # Disable build step.
INSTALL_COMMAND "" # Disable install step too.
)


CMakeLists.txt:

# The first external project will be built at *configure stage*
execute_process(
COMMAND ${CMAKE_COMMAND} --build . ${CMAKE_SOURCE_DIR}/other_project
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/other_project
)



在主项目的构建阶段要构建的ExternalProject_Add()调用。


CMakeLists.txt:

# The second external project will be built at *build stage*
ExternalProject_Add(<project_name> <options...>
CONFIGURE_COMMAND "" # Disable configure step. But other steps will be generated.
)


通过对两个 ExternalProject_Add()调用使用相同的 ,我们可以实现两个外部项目的“抢占”:构建和遵循第二个项目的步骤将使用第一个项目的configure步骤的结果。

关于cmake - 在主项目配置期间如何配置ExternalProject?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37845413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com