5

我正在尝试使用 CMake 功能从构建树中导出/导入目标(请参阅此 wiki 页面)。我有这个dependency库:

add_library(dependency SHARED dependency.cpp)
export(TARGETS dependency FILE dependency-targets.cmake)

一个可执行文件在另一个项目中使用这个库:

include(${DEPENDENCY_PATH}/dependency-targets.cmake)

add_executable(main-app main.cpp)
target_link_libraries(main-app dependency)

这工作正常。虽然我确实理解这种导出/导入机制“仅”提供了一种方便的方式来引用外部二进制文件,但我想知道在运行时是否可以dependency编译?使用导入机制(我怀疑)还是使用另一种?makemain-app

4

1 回答 1

1

您可以查看“超级构建”模式和ExternalProject

这个想法的要点是你建立一个只使用ExternalProject_Add()命令的“超级构建”项目;这将设置您的真实项目及其所有依赖项。

于 2013-02-14T14:19:18.253 回答