This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Troubleshooting eigen's "make check" on Mac OSX El Capitan

Tags: None
(comma "," separated)
rebcabin
Registered Member
Posts
1
Karma
0
I'd like to run Eigen's test suite because I want to learn the library by stepping through test programs in the debugger. I downloaded the tarball, unpacked it, made a `build` subdirectory, did `cmake ..` in that directory, no error messages. No customizations, no changes at all from the downloaded tarball. Then did `make check` and it produces many, many impenetrable error messages, the first couple of which follow below. I'd be really grateful for guidance because until I can run the tests, I really don't have a reference build to compare against my own work. I think it's got to be something easy to fix at the config level --- compiler version? compiler flags? something I should have changed in CMakeLists.txt? because it's not plausible that eigen has intrinsic problems like these.

I am running Mac OS X El Capitan and the following versions of `g++` and `boost`.

Code: Select all
$ g++ --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 8.0.0 (clang-800.0.42.1)
Target: x86_64-apple-darwin15.6.0
Thread model: posix

$ cat /usr/local/include/boost/version.hpp
#define BOOST_VERSION 106300
#define BOOST_LIB_VERSION "1_63"


Here is the head of the first chain of error messages:

Code: Select all
make check
[  0%] Built target NumericalDiff
[  1%] Building CXX object test/CMakeFiles/boostmultiprec_8.dir/boostmultiprec.cpp.o
In file included from /Users/xxxx/eigen-eigen-da9b4e14c255/test/boostmultiprec.cpp:47:
In file included from /Users/xxxx/eigen-eigen-da9b4e14c255/test/eigensolver_generalized_real.cpp:11:
In file included from /Users/xxxx/eigen-eigen-da9b4e14c255/test/main.h:41:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/complex:676:20: error:
      no matching conversion for static_cast from
      'boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<100,
      int, void>, boost::multiprecision::expression_template_option::et_on>' to 'int'
        __ilogbw = static_cast<int>(__logbw);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~
/Users/bbeckman/Downloads/eigen-eigen-da9b4e14c255/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h:386:27: note:
      in instantiation of function template specialization
      'std::__1::operator/<boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<100,
      int, void>, boost::multiprecision::expression_template_option::et_on> >' requested
      here
                          / (static_cast<Scalar>(beta*mS.coeffRef(i,i))   - alph...
                          ^


Here is the tail of the expiration gasp of `make check`. There are many many pages of messages in between.

Code: Select all
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/complex:290:40: note: candidate function not viable: no known conversion
      from 'const Scalar' (aka 'const std::__1::complex<boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<100, int, void>,
      boost::multiprecision::expression_template_option::et_on> >') to 'const value_type' (aka 'const
      boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<100, int, void>, boost::multiprecision::expression_template_option::et_on>') for 1st argument
    _LIBCPP_INLINE_VISIBILITY complex& operator/=(const value_type& __re) {__re_ /= __re; __im_ /= __re; return *this;}
                                       ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/complex:315:60: note: candidate template ignored: substitution failure
      [with _Xp = boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<100, int, void>, boost::multiprecision::expression_template_option::et_on>]
    template<class _Xp> _LIBCPP_INLINE_VISIBILITY complex& operator/=(const complex<_Xp>& __c)
                                                           ^
7 errors generated.
make[3]: *** [test/CMakeFiles/boostmultiprec_8.dir/boostmultiprec.cpp.o] Error 1
make[2]: *** [test/CMakeFiles/boostmultiprec_8.dir/all] Error 2
make[1]: *** [CMakeFiles/check.dir/rule] Error 2
make: *** [check] Error 2



Bookmarks



Who is online

Registered users: abc72656, Bing [Bot], daret, Google [Bot], Sogou [Bot], Yahoo [Bot]