Eigen 3.3.7 fails to compile with
Hi,
When building Eigen 3.3.7, after a while into the build, this compilation error occurs:
In file included from /home/jewels/programs/void/void/lib/eigen/bench/spbench/test_sparseLU.cpp:9:0:
/home/jewels/programs/void/void/lib/eigen/bench/BenchTimer.h:132:7: warning: "__APPLE__" is not defined, evaluates to 0 [-Wundef]
#elif __APPLE__
^~~~~~~~~
/home/jewels/programs/void/void/lib/eigen/bench/BenchTimer.h:147:7: warning: "__APPLE__" is not defined, evaluates to 0 [-Wundef]
#elif __APPLE__
^~~~~~~~~
/home/jewels/programs/void/void/lib/eigen/bench/spbench/test_sparseLU.cpp: In function ‘int main(int, char**)’:
/home/jewels/programs/void/void/lib/eigen/bench/spbench/test_sparseLU.cpp:90:59: error: ‘class Eigen::SparseLU<Eigen::SparseMatrix<double, 0>, Eigen::COLAMDOrdering<int> >’ has no member named ‘nnzL’; did you mean ‘m_nnzL’?
cout << "Number of nonzeros in the factor : " << solver.nnzL() + solver.nnzU() << std::endl;
^~~~
m_nnzL
/home/jewels/programs/void/void/lib/eigen/bench/spbench/test_sparseLU.cpp:90:75: error: ‘class Eigen::SparseLU<Eigen::SparseMatrix<double, 0>, Eigen::COLAMDOrdering<int> >’ has no member named ‘nnzU’; did you mean ‘m_nnzU’?
cout << "Number of nonzeros in the factor : " << solver.nnzL() + solver.nnzU() << std::endl;
^~~~
m_nnzU
In file included from /home/jewels/programs/void/void/lib/eigen/bench/spbench/test_sparseLU.cpp:9:0:
/home/jewels/programs/void/void/lib/eigen/bench/BenchTimer.h: At global scope:
/home/jewels/programs/void/void/lib/eigen/bench/BenchTimer.h:34:13: warning: ‘void clobber()’ defined but not used [-Wunused-function]
static void clobber() {
^~~~~~~
/home/jewels/programs/void/void/lib/eigen/bench/BenchTimer.h:30:13: warning: ‘void escape(void*)’ defined but not used [-Wunused-function]
static void escape(void *p) {
^~~~~~
lib/eigen/bench/spbench/CMakeFiles/test_sparseLU.dir/build.make:62: recipe for target 'lib/eigen/bench/spbench/CMakeFiles/test_sparseLU.dir/test_sparseLU.cpp.o' failed
make[2]: *** [lib/eigen/bench/spbench/CMakeFiles/test_sparseLU.dir/test_sparseLU.cpp.o] Error 1
CMakeFiles/Makefile2:47680: recipe for target 'lib/eigen/bench/spbench/CMakeFiles/test_sparseLU.dir/all' failed
make[1]: *** [lib/eigen/bench/spbench/CMakeFiles/test_sparseLU.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
My environment is as follows: jewels@Tyrant:~/programs/void/void/lib/eigen$ clang++ --version clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final) Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/bin
I'll comment out the offending line, which appears to be a lone std::cout. I also haven't found anything related to this issue when searching. If it is of any help, I can try and provide more details if need be.
Cheers,
Julian