前言

        因为某些原因需要重新配置Linux虚拟机,所以写了本篇文章来做一下记录。

        主要内容包括VSCode配置C/C++环境和虚拟机的远程连接。

        这是第一部分VS Code的相关配置。

下一篇地址:VS code配置c/c++及远程连接Ubuntu虚拟机-2

目录

一、安装VSCode及VMware虚拟机

1.VMware下载及安装

2.Ubuntu下载及安装

3.VSCode下载及安装

二、配置VSCode

1.安装MinGW

2.安装VSCode插件

3.配置C/C++插件

a.创建c_cpp_properties.json文件

 b.创建launch.json文件

c.总结


一、安装VSCode及VMware虚拟机

下载安装Vscode、VMware虚拟机和Linux镜像,具体配置之后再进行。官网如下:

VSCode官网:VSCode

VMware官网:VMware Products

Ubuntu官网:Ubuntu

1.VMware下载及安装

(1).进入官网,下滑找到并点击Try Workstation 17Pro

(2).点击 DOWNLOAD NOW下载软件

(3).安装VMware

按照引导进行安装即可,具体步骤自行百度。完成后启动虚拟机。

注:许可证密钥请到官网购买或先试用30天,其它方法自行查找。

2.Ubuntu下载及安装

 (1),进入官网

(2).下载软件

注:Linux发行版众多,可以按需自行选择下载。新手学习推荐:ubuntu、deepin、centos

3.VSCode下载及安装

(1).下载安装VSCode,步骤同上

二、配置VSCode

1.安装MinGW

注:mingw是c/c++语言的编译器,使用msys或其它都可以。

MinGW下载地址:https://sourceforge.net/projects/mingw-w64/

(1)找到需要下载的版本进行下载

注:有.exe版本的MinGW,但我没试过

(2).下载后解压(位置自行决定)

(3).记住解压的bin目录路径配置环境变量

注:具体步骤请自行百度

找到系统->高级系统设置->环境变量->找到Path,点击编辑->新建一条路径(即bin文件加路径)

(4).验证是否安装成功

Win+R 输入cmd打开 PowerShell。分别输入gcc -v 和g++ -v,出现以下情况即为安装成功

2.安装VSCode插件

(1).打开VSCode,进入扩展(标记图案)

(2).安装插件,在搜索框中输入插件名称,点击install

Chinese —— 中文插件,安装后汉化VSCode

C/C++ —— 使用C/C++语言的必备插件                Remote-SSH  —— 远程连接虚拟机必备插件

       

3.配置C/C++插件

点击窗口顶部的文件->打开文件夹->选择一个空文件夹或者直接新建一个文件夹

该文件夹为VSCode的工作区,也就是写代码的地方

      

a.创建c_cpp_properties.json文件

使用快捷键 :ctrl + shift + p 打开配置,选择C/C++:编辑配置。

找到编译器路径在输入框内输入MinGW的bin目录下gcc.exe/g++.exe的路径。

注:一般是g++.exe(C++是C的超集)

以下是我的路径,参照替换:

找到InterlliSense模式,选择下载的编译器,这里是gcc-x64。

这里的标准默认即可,也可自行更改。

测试是否成功

在工作区新建一个后缀为.c(C)或.cpp(c++)文件,文件中写一个简单的程序。

 注:.vscode文件夹是自动生成。

 此次点击图片中的选项

或依次点击

即可成功运行。同时注意到.vscode文件夹下出现takes.json文件

注:如果出现报错,提示没有lauch.json文件不用惊慌,该文件主要用于调试代码,注意.exe文件已经生成成功。

 b.创建launch.json文件

点击运行和调试,创建launch.json文件,选择c++(GDB/LLDB)

   

 选择添加配置,选择下图标记的选项

       

progrm中的内容更改与takes.json文件中对应

miDebuggerPath更改为与mingGW下bin目录中gdb.exe的路径

注:使用\\防止出现转义错误。

c.总结

VSCode配置C/C++环境主要是配置.vscode文件夹下的三个.json文件。所以可以直接使用别人配置完成的json文件(简单的复杂粘贴),之后的在其它文件夹编写代码同理。

具体配置如下:

c_cpp_properties.json

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "compilerPath": "D:/Path/mingw64/bin/gcc.exe",
            "cStandard": "c11",
            "cppStandard": "c++11",
            "intelliSenseMode": "gcc-x64"
        },
        {
            "name": "C++",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "compilerPath": "D:/Path/mingw64/bin/g++.exe",
            "cStandard": "c17",
            "cppStandard": "gnu++14",
            "intelliSenseMode": "windows-gcc-x64"
        }
    ],
    "version": 4
}

 tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe 生成活动文件",
            "command": "D:/Path/mingw64/bin/gcc.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}", 
                //"${workspaceFolder}\\*.c", //多个c文件
                // "${workspaceFolder}\\*.cpp", //多个cpp文件
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                // "${workspaceFolder}\\${workspaceRootFolderName}.exe", //多文件
                 "-lstdc++" //链接c++库
            ],
            "options": {
                "cwd": "D:/Path/mingw64/bin"
                },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build",
            "detail": "编译器: D:/Path/mingw64/bin/gcc.exe"
            }
    ]
}

launch.json

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [

        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",//改 tasks.json中生成什么改什么
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
          // "externalConsole": false,
            "externalConsole": true,
            "MIMode": "gdb",
            "miDebuggerPath": "D:\\Path\\mingw64\\bin\\gdb.exe", //调试路径
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ]
        }


    ]
}
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐