【已解决】VSCode 连接远程 Ubuntu :检测到 #include 错误。请更新 includePath。

文章目录

  • [1. 环境声明](#1. 环境声明)
  • [2. 解决过程](#2. 解决过程)

1. 环境声明

即使是同一个报错,在不同的环境中,报错原因、解决方法都是不同的,本文只能解决跟我类似的问题,如果你发现你跟我遇到的问题不太一样,建议寻找其他解法。

必须要吐槽的是:在 CSDN 上搜索这个问题,你可能会看到前几个访问量几万的博客写的都差不多,要你下载一堆东西,还要配置环境变量,我也不敢说他们是错的,但他们的解决方法显然不适用于我。

因为我遇到这个问题,明显是因为 Linux 云服务器的问题,而不是 Windows 本地的问题,我本地 Visual Studio 2022 跑的一点问题都没有,而且我是连接远程服务器写的代码,跟本地压根没有半毛钱关系啊!

好了不说废话了,下面来看看我的问题:

在我使用 VSCode 连接云端 Ubuntu 服务器,写了一些 C++ 代码的时候,所有头文件均爆红 ,VSCode 提示 检测到 #include 错误。请更新 includePath。 但是写 C 的时候就没事,即使 C 和 C++ 代码使用的是相同的头文件,如:#include <unistd.h> ,在 C 文件里一点事都没有,在 C++ 中就报错。

2. 解决过程

  1. 我想起来这台(ubuntu)服务器好像还没安装 g++,于是使用命令:

    bash 复制代码
    sudo apt install g++

    进行安装(CentOS 可能要使用 yum),但是安装后报错依旧;(其实主要问题就是这个)

  2. 于是我打开 CSDN 进行搜索,发现不太对劲,又关了;

  3. 然后我又去问了 ChatGPT,给出如下方法:

    ChatGPT 说的已经很接近了,就是因为没有安装 g++,项目目录中缺少了 .vscode 文件夹和 c_cpp_properties.json 文件,这个应该是 VSCode 自动生成的,并且写 C 的时候没有这玩意,写 C++ 的时候才会有,如果你的服务器中没有安装 g++,VSCode 就不知道去哪里找头文件,所以会报错(个人分析不一定准确)。

    bash 复制代码
    ubuntu@VM-20-5-ubuntu:~/Linux/test_5_3$ ll
    total 24
    drwxrwxr-x  5 ubuntu ubuntu 4096 May  4 15:29 ./
    drwxrwxr-x 12 ubuntu ubuntu 4096 May  3 17:03 ../
    drwxrwxr-x  2 ubuntu ubuntu 4096 May  4 15:24 NamedPipe/
    -rw-rw-r--  1 ubuntu ubuntu  884 May  3 17:18 test.c
    drwxrwxr-x  2 ubuntu ubuntu 4096 May  3 18:27 TestPipe/
    drwxrwxr-x  2 ubuntu ubuntu 4096 May  4 15:29 .vscode/	# 查看是否缺少这个文件夹(在项目目录中)
    ubuntu@VM-20-5-ubuntu:~/Linux/test_5_3$ tree .vscode/	# 查看文件结构
    .vscode/
    └── c_cpp_properties.json
    
    0 directories, 1 file
  4. 所以我们只需要在服务器上安装 g++,然后重启 VSCode,让他自动生成这个文件就行了。

  5. 就是这么简单,不需要在电脑上下载奇怪的东西,也不需要乱改环境变量,因为这是服务器的问题,而不是自己电脑的问题。


如果本文未能解决你的问题,欢迎在评论区留言讨论
END

相关推荐
Java红桃峰峰日拱一卒几秒前
在jdk8的centos上安装jdk17
linux·jdk17·jdk8
晴天的雨.9921 小时前
【C++算法】和为s的两个数
开发语言·数据结构·c++·算法
M78佐菲6 小时前
ARM学习笔记(1)
linux·arm开发·笔记·嵌入式硬件·学习
益达丫7 小时前
Socket编程揭秘:端口、IP与进程通信的底层逻辑
linux·笔记
2501_915918419 小时前
iOS编程用什么软件好?主流工具Xcode、AppCode、CodeRunner与新兴快蝎对比
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
chicheese10 小时前
Linux 面试速查表:从初级到高级,附高频场景答题模板
linux·运维
Linux-lucky10 小时前
32-38-Linux学习之旅之MySQL综合
linux·运维·学习·mysql·ubuntu
vortex511 小时前
常用终端模拟器全面对比:Kitty、WezTerm、Ghostty 与 Konsole
linux
知识分享小能手11 小时前
C++ 学习教程,从入门到精通,C++ 入门知识 — 完整知识点(1)
开发语言·c++·学习
qq_1998868711 小时前
第8板块·第2节:统一内存的高级特性与性能调优
c++·人工智能·gpu算力·cuda