我对 CMake 很陌生,想用它完成一个非常“常见”的任务。到目前为止,我只是简单地使用带有自动生成的 makefile 的 Eclipse CDT。假设我有两个项目 A 和 B。A 构建一个静态库,B 需要这个库。当然,在构建B的时候,我要保证A构建的静态库是最新的。因此,如果在 A 的源代码中进行了任何更改,则项目 B 的构建应该触发 A 的构建。当简单地将 A 作为 B 的依赖项插入时,这是 Eclipse 的默认行为。
那么,使用 CMake 实现这一目标的最简单方法是什么?我已经阅读了一些教程和类似的问题,但没有一个给我一个令人满意的答案。
例如,http: //www.cmake.org/Wiki/CMake/Tutorials/Exporting_and_Importing_Targets 教程可能是一个解决方案。然而,对于这样一个简单的任务来说,它似乎相当复杂。我必须“安装” A 的目标,但我不想安装任何东西,我只想 B 依赖 A。接下来,我听说过 ExternalProject_add 但我也不知道如何处理它。