【发布时间】:2025-09-14 01:50:01
【问题描述】:
安装并遵循GMP 的说明(使用mingw64,因为我在Windows 上)并使用make check 验证安装是否正确后,我尝试使用命令g++ -g \path\file.cpp -lgmpxx -lgmp -o \path\file.exe 在VSCode 中运行以下代码:
#include <gmp.h>
#include <iostream>
using namespace std;
int main()
{
mpz_class a,b,c;
cout << "Hello World\n";
a = 1234;
b = "5678";
c = a+b;
return 0;
}
但是得到错误error: 'mpz_class' was not declared in this scope。因此 VSCode 中的包含路径设置错误或安装混乱。我想知道如何解决这个问题:这是 VSCode 的 includePath(未设置编译器路径),安装问题(我无法确定 Windows 系统的默认安装位置,因为我发现的所有内容都是针对 Linux 的),还是我有其他问题错过了吗?我看到./configure 的标志是--enable-cxx,但我想在运行make clean 并在打开该标志的情况下重试之前询问一下,因为它需要很长时间。
我觉得这很简单,因为我无法通过谷歌搜索找到任何帮助。
感谢您的帮助!
编辑:我尝试过不在 VSCode 中运行代码,但它仍然有同样的问题,所以我不太确定它是 VSCode。
【问题讨论】:
-
确实,很多时候,试图将源自 Linux/Unix 的软件(如 gcc)塞进一个并非旨在运行源自 Linux/Unix 的代码的外国操作系统中,结果是一个主要的,主要的时间汇。即使是经验丰富的开发人员也会为此苦苦挣扎,更不用说那些刚接触 C++ 的人了。大多数情况下,从头开始简单地安装 Linux 并获得一个完全工作、完全配置的现代 C++ 编译器所需的时间要少得多。上次只用了一个半小时。现在,我只想买一台预装 Linux 的联想笔记本电脑。您已经为此花费了多少时间?
-
大约 10 分钟的设置(不包括安装时间,但这不相关,因为我可以做其他事情)。剩下的时间(大约 20 分钟)用于谷歌搜索。购买新的笔记本电脑可能是不可能的。我更喜欢使用 Windows,但如果必须,我会启动一个虚拟机来缓解我的问题。
-
@SamVarshavchik 这个问题与 MinGW 无关,我能够在我的 Ubuntu 上重现它。我以前听你说过,但公平地说,到目前为止,我对 MinGW 有很好的体验(特别是 MSYS2)。一切都是开箱即用的,repos 有最新的编译器和一堆预构建的库等。
标签: c++ windows visual-studio-code gmp