VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

时间:2022-03-24 04:24:22

一、问题描述与分析

编辑c/c++程序,我推荐使用c/c++,vs code相对于别的编译器来说有很多的优势。但是如果第一次使用的话,会觉得其不好用。因为如果不配置好的话,操作会比较麻烦。

注意:我这里是在windows下编写linux程序。

例如在使用vs code编辑c/c++程序在没有配置好的情况下,会出现如下图情况,

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

出现这种情况的原因是 在vs code没有找到头文件。或者是vs code没有配置好。
为了很好的解释上述的问题,请先了解下cygwin、mingw、posix等,并了解下cygwin和mingw之间的区别。
mingw与cygwin的区别中提到如下图,

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

如果在系统中安装好mingw,并将vs code配置好,则报错中将不会出现 “无法打开源文件 “stdio.h””,这是因为安装好的mingw中是含有该头文件的。但是对于某些posix api,mingw中是没有的。因此,为了满足我的开发需求,我选择使用cygwin,

注意若你与我的开发需求不一样,接下来的cygwin对你就是没有必要的。但后面的vs code 配置是相应差不多的。

二、cygwin下载与安装

该处可参考博客 https://blog.csdn.net/u010356768/article/details/90756742 
1、下载Cygwim
Cygwin下载官网:http://www.cygwin.com/

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

2、下载完成后,运行安装 流程截图

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

点击 all ,会出现很多包,我们主要是为了做c/c++的开发,因此,只需要选择 “devel”中的binutils、 gcc 、mingw 、gdb、make

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

点击 下一步

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

等待下载安装完成

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

执行 下列命令查看安装状态。
cygcheck -c cygwin
gcc --version
g++ --version

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

三、配置vs code

打开vs code ,文件 => 首选项 => 设置 => 扩展 => c/c++ => include path(点击在.json中编辑)

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

上图中,中括号中填写的就是 已经安装好的 cygwin中头文件的路径。
如何获得路径?
在cygwin中执行 " gcc -v -x c -e - "

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

获得的路径是相对于cygwin根目录,因此,需要转成windows下的路径。
如何转?
找到 cygwin的安装目录,该目录下会有usr文件,该处usr就是上图中的usr。

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

/usr/include 等于 c:\cygwin64\usr\include,将其路径加入到 vs code中,

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

注意该处的要点就是,让windows下的vs code能够找到头文件,然后这些头文件都在cygwin的安装目录下。(若添加后,还是没有找到头文件,可在cygwin安装目录下直接搜索头文件,然后将其路径添加进来)

添加后效果如下,

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)
VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

添加成功后,可通过右键到定义查看头文件定义

VS Code C/C++环境配置教程(无法打开源文件“xxxxxx.h”或者检测到 #include 错误,请更新includePath)(POSIX API)

总结

到此这篇关于vs code c/c++环境配置教程(无法打开源文件“xxxxxx.h” 或者 检测到 #include 错误。请更新includepath) (posix api)的文章就介绍到这了,更多相关vs code c/c++环境配置内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/qq_41044540/article/details/107326769