【问题标题】:cmakelists.txt - combine with existing Makefilescmakelists.txt - 与现有的 Makefile 结合
【发布时间】:2016-10-28 22:24:12
【问题描述】:

我是 CMakeLists.txt 的新手,它是语法,所以我希望这很容易。

项目有两个子目录:A 和 B

A 需要 B 的文件

B 已经有一个 CMakeLists.txt
A 只是有一个 Makefile。 A 不构建可执行文件;只是另一个单独项目的 .o(此文件夹是较大构建的一部分)。

我在父文件夹中创建了 CMakeLists.txt,但我不知道如何在文件夹 A 中调用 ma​​ke

父 CMakeLists.txt

cmake_minimum_required (VERSION 3.2.3)
project(PARSER)

add_subdirectory(B)

add_custom_target(a-sub
   COMMAND "make"
   WORKING_DIRECTORY "./A")

当我构建它时,它会在文件夹 B 中运行 make,但对文件夹 A 没有任何作用。

关于如何进行的建议?


最初,我尝试将现有的(文件夹 A)Makefile 重写为 CMakeLists.txt,但并没有让 v 走得更远。这个语法有点棘手。

【问题讨论】:

  • 您忘记了 add_custom_target 的 ALL 选项,因此默认情况下会对其进行处理。

标签: c++ makefile cmake


【解决方案1】:

我不认为混合 make 和 cmake 是一个好主意。如果您不能将 A 转换为使用 cmake,那么我建议您制作 A 和单独的项目。对 B 使用 cmake 并在某处安装头文件和库。然后为 A 使用 makefile 并将其指向安装 B 的位置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-09
    相关资源
    最近更新 更多