gpt4 book ai didi

c++ - cmake 使用 *.cpp 规则创建 Makefile

转载 作者:太空狗 更新时间:2023-10-29 20:10:45 24 4
gpt4 key购买 nike

我刚刚开始使用 cmake,我已经阅读了一些教程并掌握了基本的东西。

但是目前我的 CMakesList.txt 生成一个 Makefile,其中每个 .cpp 都明确命名。这意味着,每当我向我的项目添加一个新的 .cpp 时,我都需要重新运行 cmake,然后才能制作。虽然这不是什么大问题,但还是有点烦人。

由于 Makefile 可以执行类似 SOURCES=*.cpp 的操作,我认为可能有一种方法可以告诉 cmake 使用这样的规则生成 Makefile!?

我知道我能做到

cmake_minimum_required(VERSION 2.8)
file(GLOB SRC
"*.h"
"*.cpp"
)
add_executable(main ${SRC})

但我仍然需要重新运行 cmake。

最佳答案

据我所知,方法如您所说,缺点是每次添加文件时都必须运行 cmake。

为了克服这个问题,我通常做的是制作一个也调用 cmake 的自定义目标。是这样的

ADD_CUSTOM_TARGET(update
COMMAND ${CMAKE_COMMAND} ${CMAKE_SOURCE_DIR}
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target all
COMMENT "Cmake and build"
)

有了它,您可以调用 make update,它会首先调用 cmake 捕获所有文件,然后开始构建过程。

关于c++ - cmake 使用 *.cpp 规则创建 Makefile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37485759/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com