mpf_set_d导致c ++中的非法指令

时间:2015-02-10 14:13:54

标签: c++ netbeans cygwin gmp

我正在使用GMP并收到我发现由mpf_set_d引起的非法指令。我正在使用c ++中的cygwin编写Netbeans编程。

提前致谢!

编辑:

我有一个包含以下文件的文件夹: .dep.inc,cyggcc_s-seh-1.dll,cyggmp-10.dll,cyggmpxx-4.dll,cygstdc ++ - 6.dll,cygwin1.dll,我的可执行文件,gmp.h,gmpxx.h,libgmp.a, libgmp.la,libgmp.lai,libgmp.lai,libgmp.libcmd,libgmpxx.a,libgmpxx.la,libgmpxx.lai,main.cpp,main.o,main.od,Makefile,程序和文件夹所需的文本文件对于程序。

我尝试过很多东西,其中一个是在这个运行以下代码的文件夹中添加一个可执行文件:

#include <cstdlib>
#include <iostream>
#include <stdio.h>
#include "gmpxx.h"
#include <stdarg.h>
#include <string>

using namespace std;

int main()
{
    mpf_t a;
    mpf_init(a);
    mpf_set_d(a,3.1415926535);
    cout << "works" << endl;
}

在安装了GMP的我自己的计算机上运行它会让我“工作”,然后关闭,在另一台没有安装GMP的计算机上,它会抛出错误并关闭。错误是一个例外:status_illegal_instruction。

我不能给你我的代码,但我可以发帖子。如果需要更多信息,请告诉我!

再次感谢。

编辑2:

mpf_set_str以及c ++包装器的计数相同。

0 个答案:

没有答案