You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Visual Studio中统一管理多个自带Makefile的C++项目文件夹

Visual Studio 同解决方案管理多独立Makefile C++项目的方法

完全可以在同一个Visual Studio实例里管理所有独立小项目,有两种常用方案可选:

方案1:使用打开文件夹模式(无需创建单独解决方案文件,推荐快速上手)

  • 打开Visual Studio,在启动页选择「打开本地文件夹」,选中所有子项目(cpp-class、cpp-memory等)的共同上级根目录
  • VS会自动加载目录下所有文件,解决方案资源管理器会保留原有的目录结构,代码的语法高亮、智能补全功能均可正常使用
  • 针对每个子项目的Makefile构建需求,按如下步骤配置:
    1. 右键任意子目录下的Makefile,选择「配置任务」,对应你使用的make工具选择nmake(MSVC工具链)或gmake(MinGW工具链)
    2. 打开自动生成的tasks.vs.json,为每个子项目单独配置构建任务,示例配置如下:
    {
      "version": "0.2.1",
      "tasks": [
        {
          "taskLabel": "构建cpp-class项目",
          "appliesTo": "*/cpp-class/Makefile",
          "type": "default",
          "command": "make",
          "workingDirectory": "${workspaceRoot}\\cpp-class"
        },
        {
          "taskLabel": "构建cpp-memory项目",
          "appliesTo": "*/cpp-memory/Makefile",
          "type": "default",
          "command": "make",
          "workingDirectory": "${workspaceRoot}\\cpp-memory"
        }
      ]
    }
    
    1. 配置launch.vs.json添加每个子项目的启动项,指定可执行文件路径和对应工作目录,之后切换顶部工具栏的启动项即可直接运行、调试不同子项目

方案2:使用传统解决方案+多子项目模式(适合需要长期管理的场景)

  • 打开Visual Studio,新建一个「空白解决方案」,不要选择任何C++项目模板
  • 右键解决方案资源管理器中的解决方案节点,选择「添加」→「新建项目」,搜索「Makefile 项目」模板,每个子文件夹对应创建一个Makefile项目:
    • 项目存储路径指向对应子文件夹
    • 构建命令填写make,清理命令填写make clean,输出项填写对应子目录下make生成的可执行文件名
  • 所有子项目添加完成后,你可以右键任意子项目单独执行生成、清理、调试操作,所有代码均可在同一个解决方案资源管理器中浏览编辑

注意事项

  • 不要将多个子项目的代码添加到同一个C++项目中,每个子项目都有独立的main函数,合并到同一个项目会触发符号重复定义错误
  • 若使用MSVC工具链,建议从Visual Studio的「开发人员命令提示符」启动VS,确保make执行时能正确找到cl.exe等编译工具
  • 若使用MinGW工具链,需要提前将MinGW的bin目录添加到系统环境变量中,保证VS能识别到make命令

内容的提问来源于stack exchange,提问作者arthur.johnson221

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 05:27:01