根据源文件名字判断:

  • 如果名字包含[ _.c ]则添加到add_executable
  • 有多个.c添加到add_executable的,则手动添加

CMakeLists.txt中添加:

# 遍历项目根目录下所有的 .c 文件
file(GLOB_RECURSE files *.c)
foreach (file ${files})
    string(REGEX REPLACE ".+/(.+)\\..*" "\\1" exe ${file})
    # 源文件名称中包含[_.c]的文件
    if (${file} MATCHES _.c)
        add_executable(${exe} ${file})
        message(------------ 添加文件: ${file})
        continue()
    endif ()
    message(************ 跳过文件: ${file})
endforeach ()
# 需要多个文件合作生成一个可执行文件,需要自己添加
add_executable(extern1 02_keyword/extern1.c 02_keyword/extern2.c)

然后项目的文件夹/文件右键:

​​​​​​​

.cpp也可以这么操作,把.c改为.cpp即可.

根据源文件名字判断:如果名字包含[ _.c ]则添加到add_executable 有多个.c添加到add_executable的,则手动添加# 遍历项目根目录下所有的 .c 文件file(GLOB_RECURSE files *.c)foreach (file ${files}) string(REGEX REPLACE ".+/(.+)\\..*" "\\1" exe ${file}) # 源文件名称中包含[_.c]的文件 if (${file} MATCHES _ CLion好是好,但是想让它拥有多 Main 入口总是没有那么方便,对于我写算法题来说总是感觉不是那么地够爽,那么如何使用 CMake 来自动化地对cpp文件构建 主函数 入口? cmake _minimum_required(VERSION 3.16) project(without cmake ) set( CMAKE _CXX_STANDARD 14) file(GLOB Hello *.c...   去年做项目的时候,由于有需要 编译 多个 可执行文件的需求,修改了Makefile使其支持生成 多个 结果( 编译 多个 含有 main 函数 的文件),但总觉得自己的实现不够完美。   今年又遇到这样需求的时候,可在网上找了一圈,发现没有找到能够同时 编译 得到 多个 结果的Makefile模板。 可以发现,其中,seeker.c 以及 main .c 中都有 main 函数 ,如果按照以...