2
#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",GENtostr(k));
 return 0;
}

$ 私は C で pari ライブラリに取り組む初心者です。gcc を使用して cygwin64 に pari ライブラリをインストールしました。C/C++ プログラムが実行されている。gcc コンパイラでは問題ありません。しかし、上記のサンプルプログラムにpariライブラリを使用しようとしたとき。次のように多くのエラーが発生していました。

さらに、コマンド $ を使用しgcc test-pari.cてプログラムを実行します。実際には、C で pari ライブラリを使用して記述されたプログラムを実行する方法も知る必要があります。実行中にライブラリを明示的に表示する必要がありますか。助言がありますか?

/tmp/cc7ELKK4.o:test-pari.c:(.text+0x87): undefined reference to `pari_err'
/tmp/cc7ELKK4.o:test-pari.c:(.text+0x87): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `pari_err'
/tmp/cc7ELKK4.o:test-pari.c:(.text+0x230): undefined reference to `pari_err'
/tmp/cc7ELKK4.o:test-pari.c:(.text+0x230): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `pari_err'
/tmp/cc7ELKK4.o:test-pari.c:(.text+0x253): undefined reference to `pari_init'
/tmp/cc7ELKK4.o:test-pari.c:(.text+0x253): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `pari_init'
/tmp/cc7ELKK4.o:test-pari.c:(.text+0x27f): undefined reference to `gadd'
/tmp/cc7ELKK4.o:test-pari.c:(.text+0x27f): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `gadd'
/tmp/cc7ELKK4.o:test-pari.c:(.text+0x28f): undefined reference to `GENtostr'
/tmp/cc7ELKK4.o:test-pari.c:(.text+0x28f): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `GENtostr'
/tmp/cc7ELKK4.o:test-pari.c:(.rdata$.refptr.gen_1[.refptr.gen_1]+0x0): undefined reference to `gen_1'
/tmp/cc7ELKK4.o:test-pari.c:(.rdata$.refptr.gen_0[.refptr.gen_0]+0x0): undefined reference to `gen_0'
/tmp/cc7ELKK4.o:test-pari.c:(.rdata$.refptr.bot[.refptr.bot]+0x0): undefined reference to `bot'
/tmp/cc7ELKK4.o:test-pari.c:(.rdata$.refptr.avma[.refptr.avma]+0x0): undefined reference to `avma'
collect2: error: ld returned 1 exit status
4

1 に答える 1

3

少なくとも、-lコマンドにオプションを追加する必要があります。

gcc test-pari.c -lpari

最適な使用法:

gcc test-pari.c -Wall -Wextra -pedantic -lpari -std=c11 -g -o test-pari 
于 2016-06-17T10:04:54.863 に答える