我是 CMakeLists.txt 的新手,它的语法很简单。
项目有两个子目录:A和B
A需要B的文件
B 已经有一个 CMakeLists.txt。
A 只有一个Makefile。
A 不构建可执行文件;只是另一个单独项目的 .o(此文件夹是更大构建的一部分)。
我在父文件夹中创建了一个 CMakeLists.txt,但我不知道如何调用文件夹 A 中的 make。
父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,但没有成功。这个语法有点棘手。
最佳答案
我不认为混合使用 make 和 cmake 是个好主意。如果您不能将 A 转换为使用 cmake,那么我建议制作 A 和单独的项目。对 B 使用 cmake 并在某处安装 header 和库。然后使用 A 的 makefile 并将其指向安装 B 的位置。
关于c++ - cmakelists.txt - 结合现有的 Makefiles,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40314001/