[ 50%] Building CXX object CMakeFiles/spsolver.dir/sp_solver.o /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp: In function ‘int main(int, char**)’: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:30: error: no match for ‘operator*’ (operand types are ‘double’ and ‘Eigen::SparseMatrixBase >::SelfAdjointViewReturnType<2u>::Type {aka Eigen::SparseSelfAdjointView, 2u>}’) SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/Core:99:0, from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:11, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /usr/include/c++/5/complex:386:5: note: candidate: template std::complex<_Tp> std::operator*(const std::complex<_Tp>&, const std::complex<_Tp>&) operator*(const complex<_Tp>& __x, const complex<_Tp>& __y) ^ /usr/include/c++/5/complex:386:5: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const std::complex<_Tp>’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/Core:99:0, from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:11, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /usr/include/c++/5/complex:395:5: note: candidate: template std::complex<_Tp> std::operator*(const std::complex<_Tp>&, const _Tp&) operator*(const complex<_Tp>& __x, const _Tp& __y) ^ /usr/include/c++/5/complex:395:5: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const std::complex<_Tp>’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/Core:99:0, from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:11, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /usr/include/c++/5/complex:404:5: note: candidate: template std::complex<_Tp> std::operator*(const _Tp&, const std::complex<_Tp>&) operator*(const _Tp& __x, const complex<_Tp>& __y) ^ /usr/include/c++/5/complex:404:5: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: ‘Eigen::SparseMatrixBase >::SelfAdjointViewReturnType<2u>::Type {aka Eigen::SparseSelfAdjointView, 2u>}’ is not derived from ‘const std::complex<_Tp>’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:62:0, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparsePermutation.h:171:1: note: candidate: template const Eigen::Product, SparseDerived, 2> Eigen::operator*(const Eigen::InverseImpl&, const Eigen::SparseMatrixBase&) operator*(const InverseImpl& tperm, const SparseMatrixBase& matrix) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparsePermutation.h:171:1: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::InverseImpl’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:62:0, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparsePermutation.h:162:1: note: candidate: template const Eigen::Product, 2> Eigen::operator*(const Eigen::SparseMatrixBase&, const Eigen::InverseImpl&) operator*(const SparseMatrixBase& matrix, const InverseImpl& tperm) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparsePermutation.h:162:1: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::SparseMatrixBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:62:0, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparsePermutation.h:154:1: note: candidate: template const Eigen::Product Eigen::operator*(const Eigen::PermutationBase&, const Eigen::SparseMatrixBase&) operator*( const PermutationBase& perm, const SparseMatrixBase& matrix) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparsePermutation.h:154:1: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::PermutationBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:62:0, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparsePermutation.h:147:1: note: candidate: template const Eigen::Product Eigen::operator*(const Eigen::SparseMatrixBase&, const Eigen::PermutationBase&) operator*(const SparseMatrixBase& matrix, const PermutationBase& perm) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparsePermutation.h:147:1: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::SparseMatrixBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/Core:513:0, from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:11, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/Core/Transpositions.h:350:1: note: candidate: template const Eigen::Product Eigen::operator*(const Eigen::TranspositionsBase&, const Eigen::MatrixBase&) operator*(const TranspositionsBase &transpositions, ^ /home/vhuber/PERSO/code/eigen/Eigen/src/Core/Transpositions.h:350:1: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::TranspositionsBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/Core:513:0, from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:11, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/Core/Transpositions.h:338:1: note: candidate: template const Eigen::Product Eigen::operator*(const Eigen::MatrixBase&, const Eigen::TranspositionsBase&) operator*(const MatrixBase &matrix, ^ /home/vhuber/PERSO/code/eigen/Eigen/src/Core/Transpositions.h:338:1: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::MatrixBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/Core:512:0, from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:11, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/Core/PermutationMatrix.h:555:1: note: candidate: template const Eigen::Product Eigen::operator*(const Eigen::PermutationBase&, const Eigen::MatrixBase&) operator*(const PermutationBase &permutation, ^ /home/vhuber/PERSO/code/eigen/Eigen/src/Core/PermutationMatrix.h:555:1: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::PermutationBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/Core:512:0, from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:11, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/Core/PermutationMatrix.h:543:1: note: candidate: template const Eigen::Product Eigen::operator*(const Eigen::MatrixBase&, const Eigen::PermutationBase&) operator*(const MatrixBase &matrix, ^ /home/vhuber/PERSO/code/eigen/Eigen/src/Core/PermutationMatrix.h:543:1: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::MatrixBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:59:0, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h:109:5: note: candidate: template Eigen::Product, 2u>, 0> Eigen::operator*(const Eigen::MatrixBase&, const Eigen::SparseSelfAdjointView, 2u>&) operator*(const MatrixBase& lhs, const SparseSelfAdjointView& rhs) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h:109:5: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::MatrixBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:59:0, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h:93:5: note: candidate: template Eigen::Product, 2u>, 0> Eigen::operator*(const Eigen::SparseMatrixBase&, const Eigen::SparseSelfAdjointView, 2u>&) operator*(const SparseMatrixBase& lhs, const SparseSelfAdjointView& rhs) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h:93:5: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::SparseMatrixBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:37:0, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparseMatrixBase.h:320:5: note: candidate: template const Eigen::Product, 0> Eigen::operator*(const Eigen::MatrixBase&, const Eigen::SparseMatrixBase >&) operator*(const MatrixBase &lhs, const SparseMatrixBase& rhs) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparseMatrixBase.h:320:5: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::MatrixBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:37:0, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparseMatrixBase.h:303:5: note: candidate: template const Eigen::Product, 0> Eigen::operator*(const Eigen::DiagonalBase&, const Eigen::SparseMatrixBase >&) operator*(const DiagonalBase &lhs, const SparseMatrixBase& rhs) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/SparseMatrixBase.h:303:5: note: template argument deduction/substitution failed: /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:56: note: mismatched types ‘const Eigen::DiagonalBase’ and ‘double’ SparseMatrix D = 1.*A.selfadjointView(); ^ In file included from /home/vhuber/PERSO/code/eigen/Eigen/Core:91:0, from /home/vhuber/PERSO/code/eigen/Eigen/SparseCore:11, from /home/vhuber/PERSO/code/eigen/Eigen/Sparse:26, from /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:3: /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/../plugins/CommonCwiseBinaryOps.h:50:29: note: candidate: template const Eigen::CwiseBinaryOp > >::value>::type, double>, const typename Eigen::internal::plain_constant_type, typename Eigen::internal::promote_scalar_arg > >::value>::type>::type, const Eigen::SparseMatrix > Eigen::operator*(const T&, const StorageBaseType&) EIGEN_MAKE_SCALAR_BINARY_OP(operator*,product) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/Core/util/Macros.h:989:4: note: in definition of macro ‘EIGEN_MAKE_SCALAR_BINARY_OP_ONTHELEFT’ (METHOD)(const T& scalar, const StorageBaseType& matrix) { \ ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/../plugins/CommonCwiseBinaryOps.h:50:1: note: in expansion of macro ‘EIGEN_MAKE_SCALAR_BINARY_OP’ EIGEN_MAKE_SCALAR_BINARY_OP(operator*,product) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/../plugins/CommonCwiseBinaryOps.h:50:29: note: template argument deduction/substitution failed: EIGEN_MAKE_SCALAR_BINARY_OP(operator*,product) ^ /home/vhuber/PERSO/code/eigen/Eigen/src/Core/util/Macros.h:989:4: note: in definition of macro ‘EIGEN_MAKE_SCALAR_BINARY_OP_ONTHELEFT’ (METHOD)(const T& scalar, const StorageBaseType& matrix) { \ ^ /home/vhuber/PERSO/code/eigen/Eigen/src/SparseCore/../plugins/CommonCwiseBinaryOps.h:50:1: note: in expansion of macro ‘EIGEN_MAKE_SCALAR_BINARY_OP’ EIGEN_MAKE_SCALAR_BINARY_OP(operator*,product) ^ /home/vhuber/PERSO/code/eigen/bench/spbench/sp_solver.cpp:13:55: note: cannot convert ‘A.Eigen::SparseMatrix::.Eigen::SparseCompressedBase >::.Eigen::SparseMatrixBase::selfadjointView<2u>()’ (type ‘Eigen::SparseMatrixBase >::SelfAdjointViewReturnType<2u>::Type {aka Eigen::SparseSelfAdjointView, 2u>}’) to type ‘const StorageBaseType& {aka const Eigen::SparseMatrixBase >&}’ SparseMatrix D = 1.*A.selfadjointView(); ^ CMakeFiles/spsolver.dir/build.make:62 : la recette pour la cible « CMakeFiles/spsolver.dir/sp_solver.o » a échouée make[3]: *** [CMakeFiles/spsolver.dir/sp_solver.o] Erreur 1 CMakeFiles/Makefile2:104 : la recette pour la cible « CMakeFiles/spsolver.dir/all » a échouée make[2]: *** [CMakeFiles/spsolver.dir/all] Erreur 2 CMakeFiles/Makefile2:116 : la recette pour la cible « CMakeFiles/spsolver.dir/rule » a échouée make[1]: *** [CMakeFiles/spsolver.dir/rule] Erreur 2 Makefile:131 : la recette pour la cible « spsolver » a échouée make: *** [spsolver] Erreur 2