[项目001] C/C++ 开发环境的安装和配置

🏷️Project001Installation

作者:欧新宇(Xinyu OU)
当前版本:Release v1.0
开发平台:gcc 13.1.0, g++ 13.1.0, gdb 13.2
运行环境:Intel Core i7-13700KF CPU 3.4GHz, 32GB RAM
本教案所涉及的数据及代码仅用于教学和交流使用,请勿用作商用。

最后更新:2023年7月23日


本安装说明适用于《数据结构》、《C语言程序设计基础》及《数据结构与算法分析》课程。 大多数《数据结构》课程都使用伪代码进行描述,虽然数据结构与程序设计语言无关,但通常都使用C语言进行实现。一个良好的集成开放环境有助于我们将精力放在代码本身,而非IDE。本课程(教案)定位于使用当前较为流行的Visual Studio Code(VSCode)集成开发环境来实现C/C++语言的编译和运行。

本教案涉及的 C/C++程序开发环境的安装与配置 包括VSCode集成开发环境的安装与配置、"C/C++"开发库mingw64的安装与配置、"C/C++"项目环境的配置三个部分。

一. Visual Studio Code (VSCode) 集成开发环境的安装与配置

VSCode是当今最流行的集成开发环境,它是基于Python的机器学习项目开发最常用的集成开发环境之一,同时它也适用于Html+CSS、Javascript及php等Web前端的开发,此外,对于主流的高级语言Java、C++、C等也支持得非常好。VSCode安装过程较简单,主要包括以下几个部分:

1. VSCode的下载与安装

本教案建议直接从VSCode的官网下载并安装最新版的VSCode,同时尽量保证VSCode的版本更新。当前最新版为1.80.0,下载地址为:https://code.visualstudio.com/Download。安装时,注意勾选 "添加到PATH"。

2. 必要扩展的安装

VSCode的强大功能主要依赖于各种扩展包的,对于"C/C++"开发环境来说,以下扩展包是必须的,此外还有一些辅助插件例如自动补齐、格式化、主题等,有兴趣的朋友可以自行百度。

二. C/C++"开发库mingw64的安装与配置

1. 下载mingw64

按照Microsoft和VSCode的建议,推荐使用 MSYS2 安装mingw64,下载地址:https://www.msys2.org (当前版本 msys2-x86_64-20230718.exe)。注意,直接点击链接可能无法打开,此时可直接右键复制下载链接并使用下载工具进行下载。

2. 安装mingw64

双击下载好的安装包,并键入安装地址,建议使用默认路径 C:\msys64\ 进行安装。安装完成后勾选运行 MSYS2,并安装必要扩展。

3. 安装 C/C++ 运行和编译工具包 mingw-w64

在MSYS2中执行如下命令,并等待安装完成。

> pacman -S mingw-w64-ucrt-x86_64-gcc
> pacman -S --needed base-devel mingw-w64-x86_64-toolchain

4. 添加环境变量

win + i 调出系统设置,并点击 高级系统设置,在高级标签中点击 环境变量 按钮,并编辑 用户变量Path,将 mingw64 目录下的 bin 路径(例如 C:\msys64\mingw64\bin)添加至用户变量中。注意修改完环境变量后,需要重启计算机。

5. 测试 C/C++ 开发环境

win + R 输入 cmd 打开命令提示符,并输入如下命令,若出现如下图类似的版本信息则说明已安装正确。

> gcc --version
> g++ --version
> gdb --version

三. C/C++"项目环境的配置

1. 创建工作空间

工作空间 是项目所有源代码和生成文件的存储位置,就《数据结构》课程来说,我们可以认为是该课程的所有代码。例如,我们可以Windows系统的D盘上创建一个文件夹,并命名为D:\Workspace\DataStructure\Codes\。注意,文件路径可以根据实际情况进行命名,工作空间的名称为最后一级文件夹的名称,例如此处为 Codes。文件夹创建好之后,进入VSCode并点击左上角菜单栏的 文件将文件夹添加到工作区

此时,我们已经可以使用VSCode进行C/C++语言的编写了,但要能进行编译和运行还需要进行下列的工程环境的配置。

2. VSCode工程环境的配置

1) 创建工程所必须的配置文件

首先,我们需要在工作空间 Codes 下创建一个目录 .vscode (注意文件夹名称不可更改)。然后在该目录下创建如下三个文件:

c_cpp_properties.json
launch.json
tasks.json

2) 初始化工程配置文件

为方便期间,可直接复制如下代码,并粘贴到三个文件中。注意高亮部分的路径需要根据实际情况进行修改。

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "compilerPath": "C:\\msys64\\mingw64\\bin\\gcc.exe",  //根据mingw64实际安装路径修改地址
            "cStandard": "c17",
            "cppStandard": "gnu++17",
            "intelliSenseMode": "windows-gcc-x64"
        }
    ],
    "version": 4
}
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",

    "configurations": [
        {
            "name": "(gdb) Launch", 
            "type": "cppdbg", 
            "request": "launch", 
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", 
            "args": [], 
            "stopAtEntry": false,
            "cwd": "${workspaceRoot}",
            "environment": [],
            "externalConsole": true, 
            "MIMode": "gdb",
            "miDebuggerPath": "C:\\msys64\\mingw64\\bin\\gdb.exe",
            "setupCommands": [
                {
                "description": "Enable pretty-printing for gdb",
                "text": "-enable-pretty-printing",
                "ignoreFailures": true
                }
            ]
        }
    ]
}
{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe 生成活动文件",
            "command": "C:\\msys64\\mingw64\\bin\\gcc.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        },
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe 生成活动文件",
            "command": "C:\\msys64\\mingw64\\bin\\gcc.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build",
            "detail": "编译器: C:\\msys64\\mingw64\\bin\\gcc.exe"
        }
    ],
    "version": "2.0.0"
}

再次强调,所有的C/C++代码都必须放在工作空间Codes文件夹中,并且确保 .vscode 文件夹内的三个json文件存在,否则代码的调试过程中会报错!

3) 编程环境测试

至此,我们已经完成VSCode中C/C++环境的安装和配置,让我们来测试一下。编写一个著名的 HelloWorld! 开启你的编程之旅。运行时,建议使用右上角的 Run Code (Ctrl+Alt+N)来运行程序,可以减少不必要显示。*^_^*!

[项目001] C/C++ 开发环境的安装和配置

一. Visual Studio Code (VSCode) 集成开发环境的安装与配置

二. C/C++"开发库mingw64的安装与配置

三. C/C++"项目环境的配置