2016-12-02 68 views
1

我最近在ubuntu 16.04上安装了PARI库。如果使用“gun”,“ghalf”等,gcc编译失败,错误代码如下:GEN变量未识别 - PARI库C

error:'gun'未声明(首次在此函数中使用)

我是这个图书馆的新手,对此知之甚少。任何人都可以帮助我解决这个错误。

这是我试图编译代码:

#include<stdio.h> 
#include <pari/pari.h> 
int main(void) 
{ 
GEN i,j,k; 
pari_init(500000,2); 
i=gun; 
j=stoi(3); 
k=gadd(i,j); 
printf("1+3=%s\n",GENtostr(k)); 
return 0; 
} 

回答

1

看起来你正在使用用于一个很老的版本PARI的代码。现代版本使用gen_1而非gun为恒定1.随着这一变化,

gcc -o test-pari test-pari.c -lpari && ./test-pari 

产生

1+3=4

如所期望。或者(不推荐!),如果你想端口大量的旧代码,你可以前

#include <pari/pari.h> 

和代码工作,gun添加

#define PARI_OLD_NAMES 

+0

对不起,我花了这么长的时间才发现这个问题! – Charles