Boost logo

Boost Testing :

Subject: [Boost-testing] Linking to external libraries fails for many testers?
From: John Maddock (boost.regex_at_[hidden])
Date: 2012-11-22 11:56:14


Folks, I'm hoping you can suggest a fix for this: the multiprecision lib
can work with a number of external libraries including GMP, but I'm getting
a lot of errors like this one (http://tinyurl.com/cjv5c4a):

/scratch/kbelco/boost/results/boost/bin.v2/libs/multiprecision/test/test_arithmetic_mpf.test/gcc-4.7.1/debug/test_arithmetic.o:
In function `boost::multiprecision::backends::gmp_int::str(long,
std::_Ios_Fmtflags) const':
/scratch/kbelco/boost/boost/status/../boost/multiprecision/gmp.hpp:1213:
undefined reference to `__gmp_get_memory_functions'
/scratch/kbelco/boost/results/boost/bin.v2/libs/multiprecision/test/test_arithmetic_mpf.test/gcc-4.7.1/debug/test_arithmetic.o:
In function
`boost::multiprecision::backends::detail::gmp_float_imp<0u>::str(long,
std::_Ios_Fmtflags) const':
/scratch/kbelco/boost/boost/status/../boost/multiprecision/gmp.hpp:233:
undefined reference to `__gmp_get_memory_functions'
collect2: error: ld returned 1 exit status

Which I gather from the MPFR FAQ (http://www.mpfr.org/faq.html#undef_ref1)
is a result of a mismatch between the installed headers, and the installed
binaries - or at least the binaries not being in a directory that's searched
by default. Unfortunately the suggested solution in the FAQ isn't really an
option for a test script either, since we don't know whether we should be
using /usr/local/lib or /usr/local/lib64 or something else.

Anyone any good ideas? Has this been solved already anywhere?

BTW, I'm not picking on this tester: the majority of the test machines have
this issue unfortunately :-(

Thanks, John.


Boost-testing list run by mbergal at meta-comm.com