文章目录
- 前言
- 1. MSYS2 安装
- 1. 下载安装包
- 2. 安装
- 3. pacman 换清华大学源
- 4. 安装 mingw-w64 toolchain 和 cmake + ninja
- 5. 将 toolchain 加入系统环境变量
- 2. 设置 vscode
- 1. 必要的插件
- 2. 一个简单的 vscode cmake 项目
- 最后
- C
- 数据结构与算法
- CMake
前言
网上关于使用 vscode 配置 C 环境的博文非常多,但大多数都是使用 vscode 的 code runner 插件来运行,创建 tasks.json 和 lunch.json 来执行调试任务,比如:vscode配置C语言环境,VScode搭建C/C++开发环境。这种方式相当麻烦,各种路径啊环境变量啊要修改,而且这种方式只适合单个 C 文件。我初学 C 的时候,使用的也是这样的方式,好一番折腾,最近我看到了一篇使用 MSYS2 + cmake 搭建 vscode C 环境的好文,地址在这里:给萌新的C/C++环境搭建攻略(VSCode和MSYS2) 。文章非常详细,但是关于 vscode 使用 cmake tools 插件的部分没有具体描述,我在此做个补充。
1. MSYS2 安装
1. 下载安装包
-
官网安装地址(可能上不去)
-
清华大学开源软件镜像站 | MSYS2(推荐)
2. 安装
安装过程很简单,一路 next 即可
3. pacman 换清华大学源
pacman 是MSYS2 的包管理器,可以通过它安装各类工具和第三方库
打开 MSYS2 命令行(msys2.exe,位于MSTYS2 目录的根目录下),默认的源在国内访问可能很慢,建议换成清华大学的源,输入sed -i "s#https\?://mirror.msys2.org/#https://mirrors.tuna.tsinghua.edu.cn/msys2/#g" /etc/pacman.d/mirrorlist*
再按回车即可。
4. 安装 mingw-w64 toolchain 和 cmake + ninja
- mingw-w64 toolchain
打开 MSYS2 命令行,输入pacman -Syu
同步更新所有工具,然后输入pacman -S mingw-w64-ucrt-x86_64-toolchain
安装 mingw-w64 工具链。中间出现询问之类的一路回车就好,等待一段时间后应该就安装完毕了。
- cmake + ninja
将指令改为pacman -S mingw-w64-ucrt-x86_64-cmake mingw-w64-ucrt-x86_64-ninja
,其余同上
5. 将 toolchain 加入系统环境变量
添加环境变量的目的是使得 toolchain 能在计算机的各个位置被直接访问到。
顺序:设置->系统->系统信息->高级系统设置
完成后在 windows 终端中(win + X,选择windows 终端)输入gcc --version
和 cmake --version
,出现下图内容说明设置成功
2. 设置 vscode
1. 必要的插件
- C/C++
- cmake
- cmake tools
需要设置 cmake tools 插件,打开vscode 设置,输入@ext:ms-vscode.cmake-tools
,下滑至下图位置,加入 cmake.exe 的路径
2. 一个简单的 vscode cmake 项目
- ctrl + shfit + P 打开命令面板,输入
cmake: quick start
并选择
- 提示输入项目名称,随便写一个就好了
选择项目模板,C 项目就选第二个
选择项目类型,运行单个 C 文件的项目就选第二个
- 完成上面的步骤后会生成一个项目模板
-
CMakeList.txt
# 运行项目所需的 cmake 的最低版本,3.0.0 过低引发了报错,建议改为3.22.0 cmake_minimum_required(VERSION 3.0.0) # 设置项目名,版本号,所用语言 project(cmake_beginning VERSION 0.1.0 LANGUAGES C)# 测试,这两行可以删去 # include(CTest) # enable_testing()# 由源文件生成可执行文件 add_executable(cmake_beginning main.c)# 打包,这三行可以删去 # set(CPACK_PROJECT_NAME ${PROJECT_NAME}) # set(CPACK_PROJECT_VERSION ${PROJECT_VERSION}) # include(CPack)
修改后的版本如下:
cmake_minimum_required(VERSION 3.22.0)project(cmake_beginning VERSION 0.1.0 LANGUAGES C)add_executable(cmake_beginning main.c)
- 编译,运行,调试
-
编译,点击最下方的 build(准确说是构建整个项目)
-
运行
-
调试
- 想要添加其他源文件的话,直接在 CMakeList.txt 中添加即可,格式:
add_executable(可执行文件名 源文件名)
,注意不要和已有的文件同名,如:
最后
这里给出一些 C 相关的书籍
C
- 入门:《C 语言程序设计:现代方法》
- 进阶
- 《C 和指针》
- 《C 专家编程》
- 《C 陷阱与缺陷》
- 《深入理解 C 指针》
数据结构与算法
- 《算法精解:C 语言描述》,这本书给出了完整的代码,非常推荐!下载地址
- 《数据结构与算法:C 语言描述》
CMake
- 《Cmake Cookbook》,这本树非常适合入门 cmake,中文版由国内大佬翻译完成,原下载地址可能打不开,我将它传到了百度网盘上
祝大家学有所成!🤗🤗🤗