在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行

1.前言

前几天在公司的Ubuntu20.04电脑上配置了VSCode + Cmake的C/C++开发环境,可以用来跑跑C/C++的代码,然后,现在住的地方用的Windows,开发环境用的是 Visual C++ 6.0,环境有点老,跑点简单的C代码还行,但是要跑比较复杂的C++代码,代码敲起来就不那么舒服了。

所以,就想配置的和公司Ubuntu的C/C++开发环境一样,用VSCode + Cmake配置一套在Win10运行的开发环境,然后再写个简单的“一键编译运行”脚本,运行一下就可以跑程序,岂不美哉~~

说干就干。

2.软件准备

主要有下面这几个软件要安装一下。

  • VS Code ;
    (本人最喜欢的IDE!界面简洁,安装包也不大(对比VS几个G,你细品),通过安装插件的方式扩展功能,这种方式非常奈斯!)
  • Cmake ;
  • MSYS2;(用于在windows上安装编译器gcc、g++、make)

2.1 VSCode的安装

首先是VS Code的安装,直接去VSCode的官网(https://code.visualstudio.com/)下载安装包VSCodeUserSetup-x64-1.69.0.exe (Windows 64位操作系统),根据自己的电脑是64位(x64)还是32位(x86)选择相应的安装包,一路正常安装即可,比较简单。

我这里主要想说的是个人觉得VS Code的一些好用的插件,也做自己备忘。

  1. Chinese中文插件,安装完就是中文界面了;
    请添加图片描述

  2. Partial Diff插件,可比较代码、文件的不同,虽然说有更专业的beyong
    compare,但是bc要收费,破解安装也有点麻烦;
    请添加图片描述

  3. Rainbow Brackets,多重括号提示,有多重括号、大括号,会以不同颜色区分,代码会更方便查看;
    请添加图片描述

  4. One Dark Pro,VS Code的皮肤插件,默认的界面还是有点一般,安装完后会更好看;
    请添加图片描述

  5. Window Colors,VS Code多开插件,开了多个VS Code,安装完这个插件后,每个窗口会以不同颜色呈现,方便区分,非常奈斯的一个插件;
    请添加图片描述

  6. Tabnine AI,这个插件可太牛逼了,我也是最近刚开始用,可通过AI预测你下一步要输入的代码,然后你可用Tab键进行补全,非常好用!!!墙裂推荐,我用了后仿佛打开了新世界!
    请添加图片描述

接下来就是一些与C/C++语言相关的开发插件了,就不多介绍了,基本都要装上。

  1. C/C++;
    请添加图片描述
  2. C/C++ Extension Pack;
    请添加图片描述
  3. C/C++ Themes;
    请添加图片描述
  4. Cmake工具,这个应该在安装完前面3个应该会自动安装上,这里提一下;
    在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第1张图片
    VS Code的安装就说这么多,读者要是有更多、更好用的插件,欢迎交流~~

2.2 CMake的安装

同样到官网(https://cmake.org/download/)下载适配Win10-64位系统的安装包,下载有点慢,好在安装包只有不到30M,等了几分钟就下完了。

下载完后,也是一路安装,注意要勾上把CMake加入到系统路径,省得需要自己手动添加。

安装完后,重启一下电脑,让环境变量生效。

win+r,输入cmd,打开windows命令行,输入 cmake --version,打印以下信息说明,正确安装了。
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第2张图片

2.3 MSYS2的安装

最后是MSYS2的安装,这个可能有点麻烦,我也是最近刚知道这个软件,这个软件可以很方便的在Windows上安装gcc,g++和Make等一系列在Linux下的软件,省得我们要一个个地安装,跟Linux的终端有点像。

安装过程参考下面的网址就好了(我就不重复造轮子了= =):

  • https://mirror.tuna.tsinghua.edu.cn/help/msys2/
  • https://www.jianshu.com/p/04636461341e

首先是安装MSYS2,安装好后,按网址说明的换源,然后输入pacman -Sy 刷新软件包数据,然后挨个安装gcc,g++,make

 #安装gcc g++
 pacman -S mingw-w64-x86_64-toolchain
 #查询并找到msys/make
 pacman -Ss make
 #安装make
 pacman -S msys/make

最后,把gcc,g++,make添加到Windows系统环境变量。
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第3张图片
然后,重启电脑。

在Windows命令行,依次输入 gcc --version 、g++ --version 、 make --version,打印出下图,说明gcc、g++、make安装成功。

在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第4张图片
然后就是VS Code工程的配置了。

3.VS Code工程的配置

首先,新建一个Demo文件夹,用VS Code打开,然后再分别新建两个文件夹include和src,用于放头文件和源文件,工程如下:
在test.h中随便定义一个宏,在main.cpp中打印出来。
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第5张图片
main.cpp

#include 
#include "../include/test.h"

using namespace std;

int main(void) 
{
    cout << "Hello, world!" << endl;
    cout << CONST_VALUE << endl;


    return 0;
}

test.h

#ifndef __TEST_H
#define __TEST_H

#define CONST_VALUE  1234

#endif // __TEST_H  

基本工程建立完毕。

然后,进行编译配置,按ctrl+shift+p,输入cmake,点击CMake:配置那项:
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第6张图片
接着就会在右下角弹出一个窗口,点击create:
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第7张图片
然后输入工程名:
请添加图片描述
选择可执行文件:
在这里插入图片描述
这样就会新生成一个CMakeList.txt的CMake文件,这是个简单模板,然后我们根据CMake的语法规则(不懂的自行查一下,比较简单,至少比写makefile的规则简单的多)进行修改如下(注释很清楚):

#CMake 最低版本号要求
cmake_minimum_required(VERSION 3.0.0)

#指定工程名
project(Demo VERSION 0.1.0)

#指定C/C++编译器
set(CMAKE_C_COMPILER "C:/msys64/mingw64/bin/gcc")
set(CMAKE_CXX_COMPILER "C:/msys64/mingw64/bin/g++")

#指定C++ 标准
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)

#指定头文件所在的路径
include_directories(${PROJECT_SOURCE_DIR}/include)

#在 ${PROJECT_SOURCE_DIR}/src 路径下搜索.cpp源文件
aux_source_directory(${PROJECT_SOURCE_DIR}/src ALL_SRCS)

#查找当前目录下的所有源文件
#并将名称保存到 DIR_SRCS 变量
aux_source_directory(. DIR_SRCS)

#指定生成的可执行文件夹的路径
set(EXECUTABLE_OUTPUT_PATH .)

#生成可执行文件 main.exe
add_executable(main ${ALL_SRCS})

然后在VS Code的终端,输入 cmake -G “Unix Makefiles” ./ ,(注意这里不是cmake .,但我不知道为什么不行,在ubuntu可以正常跑,有知道的朋友麻烦说下)通过CMake生成Makefile:
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第8张图片
可以看到,在工程目录会生成对应本工程的Makefile,生成规则是由我们写在CMakeLists.txt指定的:
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第9张图片
再输入make进行编译:
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第10张图片
同样,在工程目录会生成对应的可执行文件main.exe(在CMakeLists.txt指定):
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第11张图片
然后,直接运行该exe,可以跑我们的程序:
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第12张图片
最后,我们再将这些编译运行命令,写成一个build.bat脚本(Ubuntu上就是build.sh文件),真正实现一键编译运行!
build.bat

rm main.exe
rm Makefile
rm CMakeCache.txt
cmake -G "Unix Makefiles" ./
make
.\main.exe

一键编译运行:
在Win10系统上使用VScode + Cmake配置C/C++开发环境,实现一键编译运行_第13张图片

一键编译运行的感觉是不是很爽,看着自己的代码慢慢地编译到执行的过程。

OK,至此,在Windows平台使用VScode + Cmake配置C/C++开发环境就完成了!!撒花~~Cheers!!

4. 结束语

  • 如果后面要链接动态库、静态库那些,查一下相应的CMake规则就好了;
  • 在此过程中,若碰到什么问题,用必应搜一下,照着解决就好,没有什么路是一帆风顺的~;
  • 我第一次在Windows上把整个过程跑通也搞了几个小时,Ubuntu上要简单一些。

写这篇博客又花了几个小时= =,希望对读者有帮助吧。

你可能感兴趣的:(搭建Windows开发环境,vscode,c++,c语言,cmake,C/C++开发环境)