【问题标题】:Use C/C++ Extension for VS code without any compiler installed对 VS 代码使用 C/C++ 扩展,无需安装任何编译器
【发布时间】:2020-11-20 12:15:34
【问题描述】:

我想在机器上不安装任何编译器的情况下使用 VS 代码的 C/C++ 扩展。 (我不需要编译器,因为我在 docker 容器中编译代码)。

问题:在 VS 代码的“问题”部分,我得到以下与标准 c 库相关的错误:

#include errors detected. Please update your includePath. Squiggles are disabled for this translation unit (path_to_file).
cannot open source file "stdint.h" (dependency of "app.h")

任何解决方法或任何方法来禁用这些特定错误(标准库)?

附言我可以成功编译项目。

【问题讨论】:

  • C++ 的问题在于它很难正确解析,你需要一个 C++ 编译器来解决这个问题一个人.
  • @AnttiHaapala:这不仅仅是困难。我可以编写一个合理的程序,如果没有stdint.h,您可能无法解析。具体来说,任何使用依赖于stdint.h 的模板实例化的程序都无法解析。
  • code.visualstudio.com/docs/remote/containers 可以移动大部分到容器中
  • 您是否考虑在您的笔记本电脑上安装Debian?
  • @BasileStarynkevitch:举个简单的例子,合理的程序可以参考std::numeric_limits<std::intmax_t>::digits。这显然需要std::intmax_t 才能查找正确的专业化。而如果你不知道std::intmax_t是一个类型,因为你缺少<cstdint>,那么你就不知道digits是一个整型常量表达式。

标签: c++ c visual-studio-code


【解决方案1】:

您至少需要一个标准库才能拥有“智能感知”。 例如,您可以下载 libc++ 或仅 MS-STL。

另一种选择是使用存储在 docker 容器中的 std 标头。 在这里您可以找到一些文档来自定义您的包含路径:https://code.visualstudio.com/docs/cpp/c-cpp-properties-schema-reference

您不想在本地机器上安装编译器的原因是什么?

【讨论】:

  • 最好使用存储在 docker 容器中的 std 头文件。但目前还不清楚如何实现这一目标。
  • 关于您的问题.. 我希望能够快速开始在新机器上工作,而无需安装一堆程序/工具链。理想情况下,我只安装 VS 代码和 docker,其余的都在 docker 容器中
猜你喜欢
  • 2010-10-02
  • 1970-01-01
  • 2022-12-07
  • 1970-01-01
  • 2022-11-08
  • 2021-01-19
  • 1970-01-01
  • 2022-01-09
  • 2015-01-10
相关资源
最近更新 更多