[chord] link error for sfslite-0.8.13

Robert Samuel Rudin bobrudin at MIT.EDU
Thu Mar 29 16:04:17 EST 2007


Hi, I followed the instructions on the website to build sfslite-0.8.13 and got
the following link errors. I am using g++ 3.3.5 on a debian machine. Am I
missing a configuration parameter? My sequence of commands were:

setup
cd ../sfslite0.8.13-build
../sfslite-0.8.13/configure --with-sfsmisc
make





merlion:/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build> make
test -z "" || (cd "" && make `echo aux-all | sed -e 's/^aux-//'`)
test -z "" -o "" = "@"DB3_DIR"@" \
        || (cd "/dist" && make `echo aux-all | sed -e 's/^aux-//'`)
make  all-recursive
make[1]: Entering directory
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build'
Making all in async
make[2]: Entering directory
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build/async'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build/async'
Making all in rpcc
make[2]: Entering directory
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build/rpcc'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build/rpcc'
Making all in arpc
make[2]: Entering directory
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build/arpc'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build/arpc'
Making all in crypt
make[2]: Entering directory
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build/crypt'
/bin/sh ../libtool --mode=link g++     -all-static -o tst  tst.o 
libsfscrypt.la
../arpc/libarpc.la ../async/libasync.la  -lnsl  -lresolv
g++ -static -o tst tst.o  ./.libs/libsfscrypt.a ../arpc/.libs/libarpc.a
../async/.libs/libasync.a -lnsl -lresolv
tst.o(.gnu.linkonce.t._ZN6bigintC1Ev+0x18): In function
`bigint::bigint[in-charge]()':
: undefined reference to `__gmpz_init'
tst.o(.gnu.linkonce.t._ZN6bigintC1EPKci+0x26): In function
`bigint::bigint[in-charge](char const*, int)':
: undefined reference to `__gmpz_init_set_str'
tst.o(.gnu.linkonce.t._ZN6bigintD1Ev+0xd): In function `bigint::~bigint
[in-charge]()':
: undefined reference to `__gmpz_clear'
tst.o(.gnu.linkonce.t._ZN6bigintaSERKS_+0x14): In function
`bigint::operator=(bigint const&)':
: undefined reference to `__gmpz_set'
tst.o(.gnu.linkonce.t._ZN6bigintC1IPK12__mpz_structS3_S3_EERK9mpdelayedIT_T0_T1_E+0x18):
In function `bigint::bigint[in-charge]<__mpz_struct const*, 
__mpz_struct const*,
__mpz_struct const*>(mpdelayed<__mpz_struct const*, __mpz_struct const*,
__mpz_struct const*> const&)':
: undefined reference to `__gmpz_init'
tst.o(.gnu.linkonce.t._ZmlIPK12__mpz_structS2_vE9mpdelayedIS3_IT_T0_T1_ES2_vERKS7_RK6bigint+0x1c):
Infunction `mpdelayed<mpdelayed<__mpz_struct const*, __mpz_struct 
const*, void>,
__mpz_struct const*, void> operator*<__mpz_struct const*, __mpz_struct const*,
void>(mpdelayed<__mpz_struct const*, __mpz_struct const*, void> const&, bigint
const&)':
: undefined reference to `__gmpz_mul'
tst.o(.gnu.linkonce.t._Z3modI9mpdelayedIPK12__mpz_structS3_vES3_vES0_IS0_IT_T0_T1_ES3_vERKS8_RK6bigint+0x1c):
In function `mpdelayed<mpdelayed<mpdelayed<__mpz_struct const*, __mpz_struct
const*, void>, __mpz_struct const*, void>, __mpz_struct const*, void>
mod<mpdelayed<__mpz_struct const*, __mpz_struct const*, void>, __mpz_struct
const*, void>(mpdelayed<mpdelayed<__mpz_struct const*, __mpz_struct const*,
void>, __mpz_struct const*, void> const&, bigint const&)':
: undefined reference to `__gmpz_mod'
tst.o(.gnu.linkonce.t._ZN6bigintC1I9mpdelayedIS1_IPK12__mpz_structS4_vES4_vES4_vEERKS1_IT_T0_T1_E+0x18):
In function `bigint::bigint[in-charge]<mpdelayed<mpdelayed<__mpz_struct 
const*,
__mpz_struct const*, void>, __mpz_struct const*, void>, __mpz_struct const*,
void>(mpdelayed<mpdelayed<mpdelayed<__mpz_struct const*, __mpz_struct const*,
void>, __mpz_struct const*, void>, __mpz_struct const*, void> const&)':
: undefined reference to `__gmpz_init'
tst.o(.gnu.linkonce.t._ZplIPK12__mpz_structS2_vE9mpdelayedIS2_S3_IT_T0_T1_EvERK6bigintRKS7_+0x1c):
Infunction `mpdelayed<__mpz_struct const*, mpdelayed<__mpz_struct const*,
__mpz_struct const*, void>, void> operator+<__mpz_struct const*, __mpz_struct
const*, void>(bigint const&, mpdelayed<__mpz_struct const*, __mpz_struct
const*, void> const&)':
: undefined reference to `__gmpz_add'
tst.o(.gnu.linkonce.t._ZN6bigintC1IPK12__mpz_structS3_vEERK9mpdelayedIT_T0_T1_E+0x18):
In function `bigint::bigint[in-charge]<__mpz_struct const*, 
__mpz_struct const*,
void>(mpdelayed<__mpz_struct const*, __mpz_struct const*, void> const&)':
: undefined reference to `__gmpz_init'
tst.o(.gnu.linkonce.t._ZN6bigintC1I9mpdelayedIPK12__mpz_structS4_vES4_vEERKS1_IT_T0_T1_E+0x18):
In function `bigint::bigint[in-charge]<mpdelayed<__mpz_struct const*,
__mpz_struct const*, void>, __mpz_struct const*,
void>(mpdelayed<mpdelayed<__mpz_struct const*, __mpz_struct const*, void>,
__mpz_struct const*, void> const&)':
: undefined reference to `__gmpz_init'
tst.o(.gnu.linkonce.t._ZN6bigintC1ERKS_+0x1f): In function
`bigint::bigint[in-charge](bigint const&)':
: undefined reference to `__gmpz_init_set'
tst.o(.gnu.linkonce.t._ZN6bigintC1Ei+0x1f): In function
`bigint::bigint[in-charge](int)':
: undefined reference to `__gmpz_init_set_si'
tst.o(.gnu.linkonce.t._ZmlRK6bigintS1_+0x1c): In function `operator*(bigint
const&, bigint const&)':
: undefined reference to `__gmpz_mul'
tst.o(.gnu.linkonce.t._ZmiRK6bigintS1_+0x1c): In function `operator-(bigint
const&, bigint const&)':
: undefined reference to `__gmpz_sub'
tst.o(.gnu.linkonce.t._Z4powmRK6bigintS1_S1_+0x23): In function `powm(bigint
const&, bigint const&, bigint const&)':
: undefined reference to `__gmpz_powm'
./.libs/libsfscrypt.a(mpz_misc.o)(.text+0x123): In function `mpz_umod_2exp':
: undefined reference to `__gmpz_tdiv_r_2exp'
./.libs/libsfscrypt.a(mpz_misc.o)(.text+0x150): In function `mpz_umod_2exp':
: undefined reference to `__gmpz_realloc'
./.libs/libsfscrypt.a(mpz_misc.o)(.text+0x364): In function `mpz_set_u64':
: undefined reference to `__gmpz_realloc'
./.libs/libsfscrypt.a(mpz_misc.o)(.text+0x5ef): In function `__gmpz_dump':
: undefined reference to `__gmpz_sizeinbase'
./.libs/libsfscrypt.a(mpz_misc.o)(.text+0x617): In function `__gmpz_dump':
: undefined reference to `__gmpz_get_str'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._Z3modIPK12__mpz_structS2_vE9mpdelayedIS3_IT_T0_T1_ES2_vERKS7_RK6bigint+0x1c):
In function `mpdelayed<mpdelayed<__mpz_struct const*, __mpz_struct const*,
void>, __mpz_struct const*, void> mod<__mpz_struct const*, __mpz_struct 
const*,
void>(mpdelayed<__mpz_struct const*, __mpz_struct const*, void> const&, bigint
const&)':
: undefined reference to `__gmpz_mod'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZN6bigintC1IPK12__mpz_structmvEERK9mpdelayedIT_T0_T1_E+0x18):
In function `bigint::bigint[in-charge]<__mpz_struct const*, unsigned long,
void>(mpdelayed<__mpz_struct const*, unsigned long, void> const&)':
: undefined reference to `__gmpz_init'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZplIPK12__mpz_structS2_vE9mpdelayedIS3_IT_T0_T1_EmvERKS7_m+0x1c):
In function `mpdelayed<mpdelayed<__mpz_struct const*, __mpz_struct const*,
void>, unsigned long, void> operator+<__mpz_struct const*, __mpz_struct 
const*,
void>(mpdelayed<__mpz_struct const*,__mpz_struct const*, void> const&, 
unsigned
long)':
: undefined reference to `__gmpz_add_ui'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZrsI9mpdelayedIPK12__mpz_structS3_vEmvES0_IS0_IT_T0_T1_EmvERKS8_m+0x1c):
In function `mpdelayed<mpdelayed<mpdelayed<__mpz_struct const*, __mpz_struct
const*, void>, unsigned long, void>, unsigned long, void>
operator>><mpdelayed<__mpz_struct const*, __mpz_struct const*, void>, unsigned
long, void>(mpdelayed<mpdelayed<__mpz_struct const*, __mpz_struct const*,
void>, unsigned long, void> const&, unsigned long)':
: undefined reference to `__gmpz_tdiv_q_2exp'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZN6bigintpLERKS_+0x1b): In
function `bigint::operator+=(bigint const&)':
: undefined reference to `__gmpz_add'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZN6bigintpLEm+0x1b): In 
function
`bigint::operator+=(unsigned long)':
: undefined reference to `__gmpz_add_ui'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZN6bigintmIEm+0x1b): In 
function
`bigint::operator-=(unsigned long)':
: undefined reference to `__gmpz_sub_ui'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZN6bigintmLERKS_+0x1b): In
function `bigint::operator*=(bigint const&)':
: undefined reference to `__gmpz_mul'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZN6bigintrMERKS_+0x1b): In
function `bigint::operator%=(bigint const&)':
: undefined reference to `__gmpz_tdiv_r'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZN6bigintlSEm+0x1b): In 
function
`bigint::operator<<=(unsigned long)':
: undefined reference to `__gmpz_mul_2exp'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZN6bigintrSEm+0x1b): In 
function
`bigint::operator>>=(unsigned long)':
: undefined reference to `__gmpz_tdiv_q_2exp'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZNK6bigint12probab_primeEi+0x14):
In function `bigint::probab_prime(int) const':
: undefined reference to `__gmpz_probab_prime_p'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._Z10strbuf_catRK6strbufRK6biginti+0x15):
In function `strbuf_cat(strbuf const&, bigint const&, int)':
: undefined reference to `__gmpz_sizeinbase'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._Z10strbuf_catRK6strbufRK6biginti+0x53):
In function `strbuf_cat(strbuf const&, bigint const&, int)':
: undefined reference to `__gmpz_get_str'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZmiRK6bigintm+0x1c): In 
function
`operator-(bigint const&, unsigned long)':
: undefined reference to `__gmpz_sub_ui'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZrmRK6bigintS1_+0x1c): In
function `operator%(bigint const&, bigint const&)':
: undefined reference to `__gmpz_tdiv_r'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._Z3modRK6bigintS1_+0x1c): In
function `mod(bigint const&, bigint const&)':
: undefined reference to `__gmpz_mod'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZlsRK6bigintm+0x1c): In 
function
`operator<<(bigint const&, unsigned long)':
: undefined reference to `__gmpz_mul_2exp'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZltRK6bigintS1_+0x14): In
function `operator<(bigint const&, bigint const&)':
: undefined reference to `__gmpz_cmp'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZgtRK6bigintS1_+0x14): In
function `operator>(bigint const&, bigint const&)':
: undefined reference to `__gmpz_cmp'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZleRK6biginti+0x14): In 
function
`operator<=(bigint const&, int)':
: undefined reference to `__gmpz_cmp_si'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZgeRK6bigintS1_+0x14): In
function `operator>=(bigintconst&, bigint const&)':
: undefined reference to `__gmpz_cmp'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._ZeqRK6bigintS1_+0x14): In
function `operator==(bigintconst&, bigint const&)':
: undefined reference to `__gmpz_cmp'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._Z6jacobiRK6bigintS1_+0x14): In
function `jacobi(bigint const&, bigint const&)':
: undefined reference to `__gmpz_jacobi'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._Z8_invert0P12__mpz_structPKS_S2_+0x36):
In function `_invert0(__mpz_struct*, __mpz_struct const*, __mpz_struct 
const*)':
: undefined reference to `__gmpz_gcdext'
./.libs/libsfscrypt.a(rabin.o)(.gnu.linkonce.t._Z8_invert0P12__mpz_structPKS_S2_+0x74):
In function `_invert0(__mpz_struct*, __mpz_struct const*, __mpz_struct 
const*)':
: undefined reference to `__gmpz_add'
./.libs/libsfscrypt.a(random_prime.o)(.text+0x7c): In function
`fermat2_test(bigint const&, bigint*, bigint*)':
: undefined reference to `__gmpz_tdiv_r'
./.libs/libsfscrypt.a(random_prime.o)(.text+0xd9): In function
`fermat2_test(bigint const&, bigint*, bigint*)':
: undefined reference to `__gmpz_tdiv_r'
./.libs/libsfscrypt.a(random_prime.o)(.text+0x1328): In function
`prime_test(bigint const&, unsigned)':
: undefined reference to `__gmpz_scan1'
./.libs/libsfscrypt.a(random_prime.o)(.text+0x13ab): In function
`prime_test(bigint const&, unsigned)':
: undefined reference to `__gmpz_realloc'
./.libs/libsfscrypt.a(random_prime.o)(.text+0x1563): In function
`prime_test(bigint const&, unsigned)':
: undefined reference to `__gmpz_mod'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZN6bigintaSEi+0x14): In
function `bigint::operator=(int)':
: undefined reference to `__gmpz_set_si'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZN6bigint6setbitEmb+0x20):
In function `bigint::setbit(unsigned long, bool)':
: undefined reference to `__gmpz_setbit'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZN6bigint6setbitEmb+0x34):
In function `bigint::setbit(unsigned long, bool)':
: undefined reference to `__gmpz_clrbit'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZplRK6bigintm+0x1c): In
function `operator+(bigint const&, unsigned long)':
: undefined reference to `__gmpz_add_ui'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZrsRK6bigintm+0x1c): In
function `operator>>(bigint const&, unsigned long)':
: undefined reference to `__gmpz_tdiv_q_2exp'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZltRK6biginti+0x14): In
function `operator<(bigint const&, int)':
: undefined reference to `__gmpz_cmp_si'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZgtRK6biginti+0x14): In
function `operator>(bigint const&, int)':
: undefined reference to `__gmpz_cmp_si'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZeqRK6biginti+0x14): In
function `operator==(bigint const&, int)':
: undefined reference to `__gmpz_cmp_si'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZneRK6bigintS1_+0x14): 
In
function `operator!=(bigint const&, bigint const&)':
: undefined reference to `__gmpz_cmp'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._ZneRK6biginti+0x14): In
function `operator!=(bigint const&, int)':
: undefined reference to `__gmpz_cmp_si'
./.libs/libsfscrypt.a(random_prime.o)(.gnu.linkonce.t._Z8quickmodRK6bigintm+0x21):
In function `quickmod(bigint const&, unsigned long)':
: undefined reference to `__gmpn_mod_1'
./.libs/libsfscrypt.a(mpscrub.o)(.text+0x11d): In function `mp_setscrub()':
: undefined reference to `__gmp_set_memory_functions'
./.libs/libsfscrypt.a(mpscrub.o)(.text+0x149): In function `mp_clearscrub()':
: undefined reference to `__gmp_set_memory_functions'
./.libs/libsfscrypt.a(mpz_raw.o)(.text+0x294): In function `mpz_get_raw':
: undefined reference to `__gmpz_init'
./.libs/libsfscrypt.a(mpz_raw.o)(.text+0x2d4): In function `mpz_get_raw':
: undefined reference to `__gmpz_clear'
./.libs/libsfscrypt.a(mpz_raw.o)(.text+0x32f): In function 
`mpz_set_rawmag_le':
: undefined reference to `__gmpz_realloc'
./.libs/libsfscrypt.a(mpz_raw.o)(.text+0x460): In function 
`mpz_set_rawmag_be':
: undefined reference to `__gmpz_realloc'
./.libs/libsfscrypt.a(mpz_square.o)(.text+0x33): In function `mpz_square':
: undefined reference to `__gmpz_init'
./.libs/libsfscrypt.a(mpz_square.o)(.text+0x80): In function `mpz_square':
: undefined reference to `__gmpz_realloc'
./.libs/libsfscrypt.a(mpz_square.o)(.text+0xaf): In function `mpz_square':
: undefined reference to `__gmpn_mul_n'
./.libs/libsfscrypt.a(mpz_square.o)(.text+0x127): In function `mpz_square':
: undefined reference to `__gmpn_addmul_1'
./.libs/libsfscrypt.a(mpz_square.o)(.text+0x166): In function `mpz_square':
: undefined reference to `__gmpn_lshift'
./.libs/libsfscrypt.a(mpz_square.o)(.text+0x1bc): In function `mpz_square':
: undefined reference to `__gmpn_addmul_1'
./.libs/libsfscrypt.a(mpz_square.o)(.text+0x23b): In function `mpz_square':
: undefined reference to `__gmpz_clear'
collect2: ld returned 1 exit status
make[2]: *** [tst] Error 1
make[2]: Leaving directory
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build/crypt'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory 
`/scratch/bobrudin/overciteCHORD/sfslite0.8.13-build'
make: *** [all-recursive-am] Error 2




More information about the chord mailing list