首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >CMake:如何构建外部项目并包含其目标

CMake:如何构建外部项目并包含其目标
EN

Stack Overflow用户
提问于 2013-03-02 21:59:48
回答 4查看 128.7K关注 0票数 128

我有一个项目A,它导出一个静态库作为目标:

代码语言:javascript
复制
install(TARGETS alib DESTINATION lib EXPORT project_a-targets)
install(EXPORT project_a-targets DESTINATION lib/alib)

现在我想使用项目A作为项目B的外部项目,并包括它的构建目标:

代码语言:javascript
复制
ExternalProject_Add(project_a
  URL ...project_a.tar.gz
  PREFIX ${CMAKE_CURRENT_BINARY_DIR}/project_a
  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
)

include(${CMAKE_CURRENT_BINARY_DIR}/lib/project_a/project_a-targets.cmake)

问题是在运行项目B的CMakeLists时,包含文件还不存在。

有没有办法让include依赖于正在构建的外部项目?

更新:我基于这个和我遇到的其他常见问题写了一个简短的CMake by Example tutorial

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15175318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档