参考教程: VSCode配置C和C++的环境的两种基本方式 CMake使用教程 VScode的Unable to determine what CMake generator to use问题处理
因为我是边学边练,所以下面的图片中会出现两个不同的项目名,TESTCODE 和thread (偶尔出现),分别是教程中的和我自己的。 这个博文主要用于记录,有不对的地方,或者可以改进点的地方,还请大家在评论区指出。 按照狮子座的特点,一旦有更好的点,博文就会更新的。
下载安装
官网下载后解压即可,不需要安装。然后添加系统Path 。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/7d40a2877e5141f4a99ffde943f8a84f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center) 在这里插入图片描述 ![在这里插入图片描述](https://img-blog.csdnimg.cn/b40849c2241440dc9199361de0283cb6.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
配置cmake
当前目录如下。如果有这种下划线,如下这样添加到... 即可 ![在这里插入图片描述](https://img-blog.csdnimg.cn/d7c64ac24901475e8bdfea0a819697d0.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/ebd60e32e1694926a96a52be7705b525.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16)
然后,Ctrl+Shift+P ,点击Cmake:配置 .我的报错了. ![在这里插入图片描述](https://img-blog.csdnimg.cn/995075a23192498092221cde9d5052a9.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/4fdb3940dd6a40e3bf23e04031e787c5.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center) 这个错误分两步完成,如下,第一步改变首选项中的设置: ![在这里插入图片描述](https://img-blog.csdnimg.cn/01e43ff53a354f88a82417ffd05343ff.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
还要改下面这个文件。如果当前没有下面这个XX.code-workspace文件,应该这样操作来生成:
打开文件 -> 将工作区另存为 -> 选择本地项目的的路径,保存的就是这个文件 ![在这里插入图片描述](https://img-blog.csdnimg.cn/6ee5dc443a424bcfbb1ab33d4a212a03.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center) 这几个设置配置完成后,再次运行Ctrl+Shift+P ,点击Cmake:配置 。
配置本地文件
CMakeLists.txt
这几行的命令大概是:
第一行不变,指定最低cmake版本 第二行链接生成的exe文件名为Hello ,使用C编译 第三行指出.h 文件目录 第四行指出要编译.cpp 文件所在目录,并且使用SRCS 这个变量名来指代它 第四行参数使用第2行指定的文件名 ,还有第四行的SRCS ,用两个变量放一起编译 ![在这里插入图片描述](https://img-blog.csdnimg.cn/9f9ee162629d4cb5ad0c4e9c5cea5e45.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
运行
依次使用下面几个命令运行
cd .\build 切换目录 cmake…生成makefile文件 mingw32-make 按照build/Makefile构建规则来构建exe文件 .\Hello.exe 执行 ![在这里插入图片描述](https://img-blog.csdnimg.cn/9edc1c645d0b4459a620a1d717647219.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
使用cmake…
下面这种生成方式是使用cmake 的(首先,要确保在build目录中 cd .\build ): ![在这里插入图片描述](https://img-blog.csdnimg.cn/16a4a607e1d04df493ec57e6cb5038b2.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16)
配置debug环境
打开launch 和tasks
配置调试环境,依次点击源文件-断点-debug图标,然后点击“运行和调试” - C++(GBD/LLDB) ,然后选中自己的gcc.exe ,点击取消就会生成launch 和tasks 文件. ![请添加图片描述](https://img-blog.csdnimg.cn/bb29665d6e8c449cb94f6b13f1d23984.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16) ![在这里插入图片描述](https://img-blog.csdnimg.cn/b0c4ceb1d0df4fa39cb26c719fb2388f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16) ![在这里插入图片描述](https://img-blog.csdnimg.cn/186215f1b5d84538aa1f991078ebc6fe.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16) ![在这里插入图片描述](https://img-blog.csdnimg.cn/a053e931d68a4ee5a91f14f318c534ca.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16)
配置launch 和tasks
task完成cmake 和make 任务,也就是上面运行中所做的。当然,option指定了,要先切换到.build 目录。 task文件将cmake 和make 封装在label为HHHH 的依赖里,这个名字后面要用。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/c412a6faa7cc40a993d583f8484e7864.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16) 需要注意下面三点。其中program是指要编译的文件,这个文件是生成的Hello.exe,这在CMakeLists中指定的。最下面的那个与tasks中的对应。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/5c9acbf2af064827bc858462f0e818a4.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16)
开始调试
如图,F5 开启调试
![在这里插入图片描述](https://img-blog.csdnimg.cn/95ea8e3d1df44069839f3e51d875c732.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5aSp6JOd6JOd55qE5pys5oiR,size_20,color_FFFFFF,t_70,g_se,x_16)
|