使用CMake构建Boost系统库?

时间:2012-03-02 00:45:56

标签: c++ boost cross-platform cmake

我正在尝试将boost chrono库集成到使用cmake构建的项目中。通过定义BOOST_CHRONO_HEADER_ONLY,可以将计时库切换为“仅标题”包含。这很方便,因为我不需要将该库合并到cmake中。关键是chrono似乎依赖于boost系统,它确实需要构建。我想完成以下目标的整合:

  • 在Linux和Windows上构建
  • 在没有安装增强功能的情况下构建“开箱即用”

这样做的方法似乎是制作一个CMakeLists.txt来构建boost系统库。相对较新的CMake,并且提升我几乎不知道我将要进入什么。将jamfile“翻译”成CMake是否合理?我已经看到Gitorious上有一个CMake增强项目,但它似乎落后了几个版本。

1 个答案:

答案 0 :(得分:0)

您可以使用CMake add_custom_commandadd_custom_target触发构建。有一个依赖于其中一个构建文件的目标,然后是自定义命令来调用构建。

另一种方法是使用ExternalProject模块,这将上述步骤简化为可以下载/检出,修补,配置,构建,测试的单个命令。除了使用add_custom_*命令手动创建步骤之外,这可能比您需要的更简单。