【vscode】Windows环境下,一键编译c/c++工程

长话短说

整体和我那篇Linux环境下的没什么区别,主要区别如下:

  1. Windows下默认使用的是基于vs的nmake,而不是cmake,需要在launch和task两个json文件之外,在创建一个CMakePresets.json,在其中选定mingw作为编译器,并通过cmake …/ --preset=mingw正确生成编译文件

  2. 在linux下使用make编译工程,但是Windows下需要使用ninja 或 MSBuild,为了避免这一问题,需要使用cmake --build .命令编译,解决平台问题

CMakePresets.json

{
    "version": 3,
    "configurePresets": [
      {
        "name": "mingw",
        "displayName": "MinGW Config",
        "generator": "MinGW Makefiles",
        "environment": {
          "PATH": "D:/MinGW/ucrt64/bin"
        }
      }
    ]
  }

task.json

将上次的这两部分改成下面这样,给cmake指令加一个参数,将make指令改成"cmake --build .",以兼容不同操作系统

{
            "label": "CMake: Build",
            "type": "shell",
            "command": "cmake",
            "args": ["../", "--preset=mingw"],
            "options": {
                "cwd": "${workspaceFolder}/build"
            },
            "dependsOn": ["create"]
        },
        {
            "label": "make",
            "type": "shell",
            "command": "cmake",
            "args": ["--build", "."],
            "options": {
                "cwd": "${workspaceFolder}/build"
            },
            "dependsOn": ["CMake: Build"]  // make 依赖 CMake 生成 Makefile
        },
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值