在win7平台上搭建基于MinGW-w64的vscode开发c++环境

一、安装vscode和cc++的插件

二、安装MinGW-w64并配置

1、下载及安装

下载MinGW-w64,下载完成之后安装,安装时安装目录自定义或者默认都行,安装过程中需要设置的选项:

  • Version :GCC 版本,直接选最高;
  • Architecture :CPU 架构,系统如果为64位,则选择 x86_64;
  • Threads :API 模式,使用默认选项;
  • Exception :异常处理方式,seh 仅针对 64 位架构,sjlj 则兼容 32 位架构;
  • Build revision :修订版本,使用默认选项;
    在这里插入图片描述
    若安装过程中出现部分文件下载失败的情况,请选择使用免安装版,点击此处下载,提取码:97x4,下载后直接解压即可。

2、配置环境变量

win7下找到系统环境变量path,增加已安装或者解压的MinGW-w64的安装目录(一直到bin目录下),我这边安装目录是C:\MinGW-w64\mingw64\bin,增加之后逐步保存退出,打开cmd输入gcc --version是否已经生效,如下如是已经生效。
在这里插入图片描述

三、配置编译及启动等文件

1、编写一个demo

创建你的工作区,比如我这边F:\cc++,新建一个main.cpp文件,内容:

#include <stdio.h>
int main()
{
    printf("hello world.\n");
    return 1;
}

2、配置c_cpp_properties.json

编写完成之后,vscode自动提示未找到#include <stdio.h>,点击提示的黄灯,点击按钮Add include path to setting,会在工作区下生成一个.vscode的文件夹,下面有一个c_cpp_properties.json的文件。如果没有提示的话,直接到你的工作区的目录下创建一个c_cpp_properties.json的目录。然后填写下面的内容,注意:##注释下面的路径,需要与自己安装目录一致

{
    "configurations": [{
        "name": "MinGW",
        "intelliSenseMode": "gcc-x64",
        "compilerPath": "C:/MinGW-w64/mingw64/bin/x86_64-w64-mingw32-gcc.exe",
        "cStandard": "c11",
        "cppStandard": "c++17",
        "includePath": [
           ## 下面路径中的 C:/MinGW-w64 部分需要替换成你的 MinGw-w64 安装路径
            "${workspaceFolder}/**",
            "C:/MinGW-w64/mingw64/x86_64-w64-mingw32/include",
            "C:/MinGW-w64/mingw64/lib/gcc/x86_64-w64-mingw32/7.3.0/include/c++",
            "C:/MinGW-w64/mingw64/lib/gcc/x86_64-w64-mingw32/7.3.0/include/c++/tr1"
        ],
        "defines": [
            "_DEBUG",
            "UNICODE",
            "_UNICODE",
            "__GNUC__=7",
            "__cdecl=__attribute__((__cdecl__))"
        ],
        "browse": {
            "path": [
                ## 下面路径中的C:/MinGW-w64 部分需要替换成你的 MinGw-w64 安装路径
                "${workspaceFolder}/**",
                "C:/MinGW-w64/mingw64/x86_64-w64-mingw32/include",
                "C:/MinGW-w64/mingw64/lib/gcc/x86_64-w64-mingw32/7.3.0/include/c++",
                "C:/MinGW-w64/mingw64/lib/gcc/x86_64-w64-mingw32/7.3.0/include/c++/tr1"
            ],
            "limitSymbolsToIncludedHeaders": true,
            "databaseFilename": ""
        }
    }],
    "version": 4
}

3、配置launch.json

打开main.cpp,F5开始调试,会弹出选择环境的面板,这里选择C++(GDB/LLDB),如下:
在这里插入图片描述
同样在工作区.vscode下打开文件luanch.json文件,清空内容填写以下内容并保存:

{
    "version": "0.2.0",
    "configurations": [{
        // 配置 VS Code 调试行为:
        "name": "GDB Debug", // 设置在启动配置下拉菜单中显示调试配置的名称。
        "preLaunchTask": "Compile", // 调试会话开始前要运行的任务。
        "type": "cppdbg", // 设置要使用的基础调试器。使用 GDB 或 LLDB 时必须是 cppdbg 。
        "request": "launch", // 设置启动程序还是附加到已经运行的实例。启动或附加 ( launch | attach ).
        "program": "${fileDirname}/${fileBasenameNoExtension}.exe", // 调试器将启动或附加的可执行文件的完整路径。
        "externalConsole": true, // 设置是否显示外部控制台。
        "logging": { // 用于确定应该将哪些类型的消息记录到调试控制台。
            "exceptions": true, // 是否应将异常消息记录到调试控制台。默认为真。
            "moduleLoad": false, // 是否应将模块加载事件记录到调试控制台。默认为真。
            "programOutput": true, // 是否应将程序输出记录到调试控制台的可选标志。默认为真。
            "engineLogging": false, // 是否应将诊断引擎日志记录到调试控制台。默认为假。
            "trace": false, // 是否将诊断适配器命令跟踪记录到调试控制台。默认为假。
            "traceResponse": false // 是否将诊断适配器命令和响应跟踪记录到调试控制台。默认为假。
        },
        // 配置目标应用程序:
        "args": [], // 设置调试时传递给程序的命令行参数。
        "cwd": "${workspaceFolder}", // 设置调试器启动的应用程序的工作目录。
        "environment": [], // 设置调试时添加到程序环境中的环境变量,例如: [ { "name": "squid", "value": "clam" } ]。
        // 自定义 GDB 或者 LLDB:
        "windows": {
            "MIMode": "gdb", // 指定 VS Code 连接的调试器,必须为 gdb 或者 lldb。
            "miDebuggerPath": "C:/MinGW-w64/mingw64/bin/gdb.exe" // 调试器的路径,修改为你的安装路径
        },
        "miDebuggerArgs": "", // 传递给调试器的附加参数
        "stopAtEntry": false, // 设置调试器是否停止在目标的入口(附加时忽略)。默认值为 false。
        "setupCommands": [{ // 执行下面的命令数组以设置 GDB 或 LLDB
            "description": "Enable pretty-printing for gdb",
            "text": "-enable-pretty-printing", // 鼠标悬停查看变量的值,需要启用 pretty-printing 。
            "ignoreFailures": true // 忽略失败的命令,默认为 false 。
        }]
    }]
}

修改字段miDebuggerPath的内容与自己环境上的安装目录一致。

4、配置task.json

再次按F5,提示找不到任务入口,点击配置任务,然后再弹出的命令面板上选择使用模板创建task.json文件,清空里面的内容增加以下内容:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++.exe build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "\\usr\\bin\\gdb.exe",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "g++.exe build active file"
        }
    ]
}

5、到此配置完成

配置完成后在工作区.vscode下存在三个文件,就是上面增加的三个文件。如果你还想再创建其他的 C 语言开发工作区,我们只需要新建一个文件夹,再把现在已有工作区目录下的 .vscode 文件夹复制到新建的文件夹即可:
在这里插入图片描述在这里插入图片描述
以下按钮,选择编译或者调试。
在这里插入图片描述
在这里插入图片描述
参考链接:https://segmentfault.com/a/1190000014800106

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值