2014-09-20 72 views
1

我試圖編譯nettle 3.0 gmp 6.0.0和我一直得到缺少的符號:蕁麻-3.0和GMP-6.0.0 - 未定義的符號 「gmpz_limbs_write,gmpz_limbs_read ......」

Making all in tools 
gcc -g -O2 -ggdb3 -Wno-pointer-sign -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wpointer-arith -Wbad-function-cast -Wnested-externs -L.. pkcs1-conv.o misc.o ../getopt.o ../getopt1.o -lhogweed -lnettle -lgmp -o pkcs1-conv 
ld: warning: relocation error: R_386_32: file ../getopt.o: symbol optarg: external symbolic relocation against non-allocatable section .debug_info; cannot be processed at runtime: relocation ignored 
Undefined      first referenced 

symbol        in file 

__gmpz_limbs_write     ../libhogweed.so 

__gmpz_limbs_finish     ../libhogweed.so 

__gmpz_limbs_modify     ../libhogweed.so 

__gmpn_zero       ../libhogweed.so 

__gmpz_roinit_n      ../libhogweed.so 

__gmpn_cnd_sub_n     ../libhogweed.so 

__gmpn_cnd_add_n     ../libhogweed.so 

__gmpz_limbs_read     ../libhogweed.so 

ld: fatal: symbol referencing errors 
collect2: error: ld returned 1 exit status 
*** Error code 1 
make: Fatal error: Command failed for target `pkcs1-conv' 
Current working directory /root/nettle-3.0/tools 

我安裝gmp 6.0.0到/usr/local,然後 - 在nettle目錄中,我運行./configure --prefix=/usr/local,然後make並得到了上述錯誤。

回答

3

看起來蕁麻是首先找到一個較舊的版本。你有沒有嘗試過?

./configure --prefix=/usr/local --with-include-path=/usr/local/include --with-lib-path=/usr/local/lib 

我找到了使用./configure --help的選項。