cmake的ExternalProject_Add:如何设置源,构建和安装目录

时间:2017-03-16 19:25:18

标签: cmake external-project

我想使用ExternalProject_Add函数来安装启用cmake的项目。我需要控制构建和安装过程。更具体地说,我希望cmake构建并安装在特定目录中。

可以选择放置源目录的路径:SOURCE_DIR。是否有BUILD_DIRINSTALL_DIR的等效内容?我没有看到任何相似之处。

有一个PREFIX选项:

  

整个项目的根目录

这究竟是什么意思? cmake的ExternalProject_Add如何进行安装?

修改

这项工作,但我无法控制源目录,也没有安装库:

ExternalProject_Add(
    wjelement-project

    GIT_REPOSITORY "https://github.com/netmail-open/wjelement.git"
    GIT_TAG "v1.2"

    UPDATE_COMMAND ""
    PATCH_COMMAND ""
    TEST_COMMAND ""
    INSTALL_COMMAND ""  

    #SOURCE_DIR "${MY_SOURCE_ROOT}/wjelement"
    BINARY_DIR "${MY_BUILD_DIR}/wjelement"
    INSTALL_DIR "${CCT_INSTALL_DIR}/wjelement"   
)
  • 如果我取消注释SOURCE_DIR,它不会从GIT_CLONE克隆,而是尝试从SOURCE_DIR获取来源(并且它失败,因为这不是我的预期...)
  • 如果我评论INSTALL_COMMAND "",那么它会尝试安装在 C:/ Program Files / wjelement 中,默认(显然)而不是INSTALL_DIR
  • 源文件的默认路径似乎是${CMAKE_BINARY_DIR}/wjelement-project-prefix/src
使用INSTALL_DIR

Another Stackoverflow question报告问题(或至少是非直观行为)。

0 个答案:

没有答案