使用Cmake来做./genMakefiles&& make -j4

时间:2018-05-06 01:50:28

标签: c++ makefile build cmake

我正在尝试在https://github.com/rgaufman/live555

上集成CMake构建

它使用传统的./genMakefiles && make -j4因此我只需要创建一个CMakeLists.txt来执行此操作,对吗?

我知道正确的方法是添加所有cpp文件并构建所有内容,但这不是我的项目,我不打算维护它所以这种情况的最佳方式就是像我一样集成我建议

这是我的原型:

cmake_minimum_required(VERSION 3.9)
project(live555)

ADD_CUSTOM_COMMAND(
    OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/live555
    COMMAND ./genMakefiles linux
    COMMENT "=================== Generating makefiles for linux"
    COMMAND make -j4
    COMMENT "=================== make..."
)

我不明白OUTPUT是什么。问OUTPUT是否由make -j4决定?另外,我做了cmake . && make,看到输出:

lz@vm:~/JSCam/src/jscam/live555$ cmake .
-- Configuring done
-- Generating done
-- Build files have been written to: /home/lz/JSCam/src/jscam/live555
lz@vm:~/JSCam/src/jscam/live555$ make

我无法看到我添加的评论,也没有构建文件。

1 个答案:

答案 0 :(得分:1)

在CMake中,如果您需要构建其他项目,而不是维持",ExternalProject_Add通常是一个不错的选择:

  

foo.com函数创建一个自定义目标来驱动外部项目的下载,更新/补丁,配置,构建,安装和测试步骤

它的用法非常简单:

bar.com