我剛剛在我的kubuntu機器上安裝了zkcm library,我無法編譯C++代碼。zkcm-library找不到mpfr-library
我已經安裝了gmp
和mpfr
庫,並檢查它們是否工作;代碼
mpfr_t m1, m2, m3;
mpfr_init(m1); mpfr_init(m2); mpfr_init(m3);
mpfr_mul(m1, m2, m3, MPFR_RNDN);
編譯並運行。
然後我嘗試使用zkcm
;我嘗試compliling行
zkcm_matrix m;
,並得到一堆錯誤貌似約zkcm
沒有找到mpfr
;這裏是輸出的開頭:
/usr/local/lib/libzkcm.a(zkcm_c.o): In function `zkcm_init_ri(zkcm*, double, double)':
/home/jorgen/Downloads/zkcm_lib-0.4.0/srcs/zkcm_c.c:126: undefined reference to `mpfr_inits'
/home/jorgen/Downloads/zkcm_lib-0.4.0/srcs/zkcm_c.c:127: undefined reference to `mpfr_set_d'
/usr/local/lib/libzkcm.a(zkcm_c.o): In function `zkcm_init_ri_str(zkcm*, char const*, char const*)':
/home/jorgen/Downloads/zkcm_lib-0.4.0/srcs/zkcm_c.c:132: undefined reference to `mpfr_inits'
/home/jorgen/Downloads/zkcm_lib-0.4.0/srcs/zkcm_c.c:136: undefined reference to `mpfr_set_str'
/home/jorgen/Downloads/zkcm_lib-0.4.0/srcs/zkcm_c.c:134: undefined reference to `mpfr_set_ui'
我試圖按照指示infrom zkcm
;我有線路
#include "mpfr.h"
#include "zkcm.hpp"
我編譯使用
g++ test.cpp -msse2 -std=c++11 -O2 -lm -lmpfr -lgmp -lgmpxx -lzkcm -o test
任何想法的代碼(稱爲test.cpp
)?
您是否試過改變將庫名傳遞給編譯器的順序? – Cameron
我現在試了一下,沒有結果..記住任何特定的順序?我寧願不嘗試所有120 :)。 OP中的順序是zkcm README中的順序。 – jorgen
如果一個庫的依賴庫被放在相對於庫本身的錯誤順序中(如此,只需要兩個測試命令),我已經看到了鏈接失敗的情況。但這次似乎並非如此。 – Cameron