C++ 带有gmp的代码块,带有<&书信电报;运算符和mp*_类
我在Win 7 64机器上使用gcc 4.7.2和gmp 5.0.5的代码块。C++ 带有gmp的代码块,带有<&书信电报;运算符和mp*_类,c++,io,codeblocks,gmp,C++,Io,Codeblocks,Gmp,我在Win 7 64机器上使用gcc 4.7.2和gmp 5.0.5的代码块。 在开始使用gmpxx后,我看到一个奇怪的segfault,它不会出现在+、-,等运算符中,但使用OK,是时候将其标记为已回答了。事实上,我是通过mingw-get安装gmp的,而在谷歌的几乎所有地方,它都表示自己为自己的系统构建gmp。这是一个愚蠢的错误,多亏了@Lol4t0的评论,现在一切正常。 所以对于所有像我这样的新人来说: 1) 使用MSYS安装MinGW 2) 下载gmp源代码并解压缩到mingw\msys
在开始使用gmpxx后,我看到一个奇怪的segfault,它不会出现在+、-,等运算符中,但使用OK,是时候将其标记为已回答了。事实上,我是通过mingw-get安装gmp的,而在谷歌的几乎所有地方,它都表示自己为自己的系统构建gmp。这是一个愚蠢的错误,多亏了@Lol4t0的评论,现在一切正常。 所以对于所有像我这样的新人来说: 1) 使用MSYS安装MinGW 2) 下载gmp源代码并解压缩到mingw\msys\1.0\home中的某个文件夹\ 3) 打开mingw shell并导航到gmp文件夹 4) ./configure--enable cxx--prefix=/home/newgmpinstall 5) 制造 6) 安装 7) 核对 如果检查为ok,那么在newgmpinstall中,您将找到适用于您的系统的标题gmp.h和gmpxx.h以及库libgmp.a和libgmpxx.a 如果愿意,可以将它们移动到新文件夹中。然后在IDE项目属性中将*.a文件添加到链接库中,并将包含*.h文件的文件夹添加到编译器搜索目录中 编写代码
注意:首先./configure退出时出现一个关于M4丢失的错误,因为我丢失了M4包。只需下载M4的源代码,首先为M4执行上述步骤,然后安装gmp。好的,是时候将此标记为已回答。事实上,我是通过mingw-get安装gmp的,而在谷歌的几乎所有地方,它都表示自己为自己的系统构建gmp。这是一个愚蠢的错误,多亏了@Lol4t0的评论,现在一切正常。 所以对于所有像我这样的新人来说: 1) 使用MSYS安装MinGW 2) 下载gmp源代码并解压缩到mingw\msys\1.0\home中的某个文件夹\ 3) 打开mingw shell并导航到gmp文件夹 4) ./configure--enable cxx--prefix=/home/newgmpinstall 5) 制造 6) 安装 7) 核对 如果检查为ok,那么在newgmpinstall中,您将找到适用于您的系统的标题gmp.h和gmpxx.h以及库libgmp.a和libgmpxx.a 如果愿意,可以将它们移动到新文件夹中。然后在IDE项目属性中将*.a文件添加到链接库中,并将包含*.h文件的文件夹添加到编译器搜索目录中 编写代码
注意:首先./configure退出时出现一个关于M4丢失的错误,因为我丢失了M4包。只需下载M4的源代码,并首先为M4执行上述步骤,然后安装gmp。您是否自己制作了
gmp?它是否通过了makecheck
验证?它是否真的在操作符中存在错误?那么,您从哪里得到了“gcc 5.0.5”?如果你可以从未来下载代码,难道你不能找到你的程序的未来版本并下载它,这样你就不必编写它了吗?:)@Lol4t0不,我使用mingw get并假设它会工作,到目前为止它确实工作了。我刚刚建造了它,现在可以正常工作了。非常感谢,我真不敢相信我忽略了这么重要的事情。@abarnet对于错误的版本号表示抱歉,它是gcc 4.7.2和gmp 5.0.5。现在我在Win2.0.4上,听一些关于VLC7:)的内容。segfault发生在gmpxx.h的第2085行,但如上所述,我错误地认为mingw get将提供一个在我的系统上完美运行的gmp库。谢谢很多人的帮助。你是自己制作的吗?它是否通过了makecheck
验证?它是否真的在操作符中存在错误?那么,您从哪里得到了“gcc 5.0.5”?如果你可以从未来下载代码,难道你不能找到你的程序的未来版本并下载它,这样你就不必编写它了吗?:)@Lol4t0不,我使用mingw get并假设它会工作,到目前为止它确实工作了。我刚刚建造了它,现在可以正常工作了。非常感谢,我真不敢相信我忽略了这么重要的事情。@abarnet对于错误的版本号表示抱歉,它是gcc 4.7.2和gmp 5.0.5。现在我在Win2.0.4上,听一些关于VLC7:)的内容。segfault发生在gmpxx.h的第2085行,但如上所述,我错误地认为mingw get将提供一个在我的系统上完美运行的gmp库。谢谢很多人的帮助。
#include <iostream>
#include <gmpxx.h>
using namespace std;
int main()
{
mpz_class c = 21;
cout << c << endl;
}
#include <iostream>
#include <gmpxx.h>
using namespace std;
int main()
{
mpz_class a = 3, b = 8, c;
c = a + b;
cout << c.get_str() << endl;
}
#include <iostream>
#include <gmpxx.h>
using namespace std;
int main()
{
mpz_class a = 3, b = 8, c, d = 21;
c = a + b;
cout << c.get_str() << endl;
cout << d << endl;
}