Error building calimiro
On Debian 12 i get:
[ 92%] Building CXX object openMVG/multiview/CMakeFiles/openMVG_multiview.dir/triangulation.cpp.o
[ 92%] Building CXX object openMVG/multiview/CMakeFiles/openMVG_multiview.dir/triangulation_nview.cpp.o
In file included from /usr/include/eigen3/Eigen/Eigenvalues:36,
from /usr/include/eigen3/Eigen/Dense:7,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/numeric/eigen_alias_definition.hpp:17,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/conditioning.hpp:32,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/two_view_kernel.hpp:35,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/solver_fundamental_kernel.hpp:35,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/solver_fundamental_kernel.cpp:30:
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h: In instantiation of ‘void
Eigen::internal::tridiagonalization_inplace(MatrixType&, DiagonalType&, SubDiagonalType&, CoeffVectorType&, bool) [with
MatrixType = Eigen::Matrix<double, -1, -1, 0, 9, 9>; DiagonalType = Eigen::Matrix<double, -1, 1>; SubDiagonalType =
Eigen::Matrix<double, -1, 1>; CoeffVectorType = Eigen::Matrix<double, -1, 1>]’:
/usr/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h:458:39: required from
‘Eigen::SelfAdjointEigenSolver<MatrixType>& Eigen::SelfAdjointEigenSolver<_MatrixType>::compute(const
Eigen::EigenBase<OtherDerived>&, int) [with InputType = Eigen::Product<Eigen::Transpose<Eigen::Matrix<double, -1, 9> >,
Eigen::Matrix<double, -1, 9>, 0>; _MatrixType = Eigen::Matrix<double, -1, 9>]’
/usr/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h:181:14: required from
‘Eigen::SelfAdjointEigenSolver<_MatrixType>::SelfAdjointEigenSolver(const Eigen::EigenBase<OtherDerived>&, int) [with
InputType = Eigen::Product<Eigen::Transpose<Eigen::Matrix<double, -1, 9> >, Eigen::Matrix<double, -1, 9>, 0>; _MatrixType =
Eigen::Matrix<double, -1, 9>]’
/home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/solver_fundamental_kernel.cpp:139:61: required from here
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h:434:55: error: no matching function for call to
‘Eigen::internal::tridiagonalization_inplace_selector<Eigen::Matrix<double, -1, -1, 0, 9, 9>, -1,
false>::run(Eigen::Matrix<double, -1, -1, 0, 9, 9>&, Eigen::Matrix<double, -1, 1>&, Eigen::Matrix<double, -1, 1>&,
Eigen::Matrix<double, -1, 1>&, bool&)’
434 | tridiagonalization_inplace_selector<MatrixType>::run(mat, diag, subdiag, hcoeffs, extractQ);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h:447:12: note: candidate: ‘template<class DiagonalType, class
SubDiagonalType> static void Eigen::internal::tridiagonalization_inplace_selector<MatrixType, Size,
IsComplex>::run(MatrixType&, DiagonalType&, SubDiagonalType&, CoeffVectorType&, bool) [with SubDiagonalType = DiagonalType;
MatrixType = Eigen::Matrix<double, -1, -1, 0, 9, 9>; int Size = -1; bool IsComplex = false]’
447 | void run(MatrixType& mat, DiagonalType& diag, SubDiagonalType& subdiag, CoeffVectorType& hCoeffs, bool extractQ)
| ^~~
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h:447:12: note: template argument deduction/substitution
failed:
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h:434:55: note: cannot convert ‘hcoeffs’ (type
‘Eigen::Matrix<double, -1, 1>’) to type ‘Eigen::internal::tridiagonalization_inplace_selector<Eigen::Matrix<double, -1, -1, 0,
9, 9>, -1, false>::CoeffVectorType&’ {aka ‘Eigen::Matrix<double, -1, 1, 0, 8, 1>&’}
434 | tridiagonalization_inplace_selector<MatrixType>::run(mat, diag, subdiag, hcoeffs, extractQ);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[6]: *** [openMVG/multiview/CMakeFiles/openMVG_multiview.dir/build.make:216:
openMVG/multiview/CMakeFiles/openMVG_multiview.dir/solver_fundamental_kernel.cpp.o] Errore 1
make[6]: *** Attesa per i processi non terminati....
make[5]: *** [CMakeFiles/Makefile2:1728: openMVG/multiview/CMakeFiles/openMVG_multiview.dir/all] Errore 2
make[4]: *** [Makefile:136: all] Errore 2
make[3]: *** [external/CMakeFiles/openMVG-external.dir/build.make:86: external/openMVG-external-prefix/src/openMVG-external-
stamp/openMVG-external-build] Errore 2
make[2]: *** [CMakeFiles/Makefile2:254: external/CMakeFiles/openMVG-external.dir/all] Errore 2
make[1]: *** [CMakeFiles/Makefile2:261: external/CMakeFiles/openMVG-external.dir/rule] Errore 2
make: *** [Makefile:218: openMVG-external] Errore 2
[ 92%] Building CXX object openMVG/multiview/CMakeFiles/openMVG_multiview.dir/triangulation.cpp.o
[ 92%] Building CXX object openMVG/multiview/CMakeFiles/openMVG_multiview.dir/triangulation_nview.cpp.o
In file included from /usr/include/eigen3/Eigen/Eigenvalues:36,
from /usr/include/eigen3/Eigen/Dense:7,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/numeric/eigen_alias_definition.hpp:17,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/conditioning.hpp:32,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/two_view_kernel.hpp:35,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/solver_fundamental_kernel.hpp:35,
from /home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/solver_fundamental_kernel.cpp:30:
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h: In instantiation of ‘void
Eigen::internal::tridiagonalization_inplace(MatrixType&, DiagonalType&, SubDiagonalType&, CoeffVectorType&, bool) [with
MatrixType = Eigen::Matrix<double, -1, -1, 0, 9, 9>; DiagonalType = Eigen::Matrix<double, -1, 1>; SubDiagonalType =
Eigen::Matrix<double, -1, 1>; CoeffVectorType = Eigen::Matrix<double, -1, 1>]’:
/usr/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h:458:39: required from
‘Eigen::SelfAdjointEigenSolver<MatrixType>& Eigen::SelfAdjointEigenSolver<_MatrixType>::compute(const
Eigen::EigenBase<OtherDerived>&, int) [with InputType = Eigen::Product<Eigen::Transpose<Eigen::Matrix<double, -1, 9> >,
Eigen::Matrix<double, -1, 9>, 0>; _MatrixType = Eigen::Matrix<double, -1, 9>]’
/usr/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h:181:14: required from
‘Eigen::SelfAdjointEigenSolver<_MatrixType>::SelfAdjointEigenSolver(const Eigen::EigenBase<OtherDerived>&, int) [with
InputType = Eigen::Product<Eigen::Transpose<Eigen::Matrix<double, -1, 9> >, Eigen::Matrix<double, -1, 9>, 0>; _MatrixType =
Eigen::Matrix<double, -1, 9>]’
/home/user/Programs/calimiro/external/openMVG/src/openMVG/multiview/solver_fundamental_kernel.cpp:139:61: required from here
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h:434:55: error: no matching function for call to
‘Eigen::internal::tridiagonalization_inplace_selector<Eigen::Matrix<double, -1, -1, 0, 9, 9>, -1,
false>::run(Eigen::Matrix<double, -1, -1, 0, 9, 9>&, Eigen::Matrix<double, -1, 1>&, Eigen::Matrix<double, -1, 1>&,
Eigen::Matrix<double, -1, 1>&, bool&)’
434 | tridiagonalization_inplace_selector<MatrixType>::run(mat, diag, subdiag, hcoeffs, extractQ);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h:447:12: note: candidate: ‘template<class DiagonalType, class
SubDiagonalType> static void Eigen::internal::tridiagonalization_inplace_selector<MatrixType, Size,
IsComplex>::run(MatrixType&, DiagonalType&, SubDiagonalType&, CoeffVectorType&, bool) [with SubDiagonalType = DiagonalType;
MatrixType = Eigen::Matrix<double, -1, -1, 0, 9, 9>; int Size = -1; bool IsComplex = false]’
447 | void run(MatrixType& mat, DiagonalType& diag, SubDiagonalType& subdiag, CoeffVectorType& hCoeffs, bool extractQ)
| ^~~
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h:447:12: note: template argument deduction/substitution
failed:
/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h:434:55: note: cannot convert ‘hcoeffs’ (type
‘Eigen::Matrix<double, -1, 1>’) to type ‘Eigen::internal::tridiagonalization_inplace_selector<Eigen::Matrix<double, -1, -1, 0,
9, 9>, -1, false>::CoeffVectorType&’ {aka ‘Eigen::Matrix<double, -1, 1, 0, 8, 1>&’}
434 | tridiagonalization_inplace_selector<MatrixType>::run(mat, diag, subdiag, hcoeffs, extractQ);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[6]: *** [openMVG/multiview/CMakeFiles/openMVG_multiview.dir/build.make:216:
openMVG/multiview/CMakeFiles/openMVG_multiview.dir/solver_fundamental_kernel.cpp.o] Errore 1
make[6]: *** Attesa per i processi non terminati....
make[5]: *** [CMakeFiles/Makefile2:1728: openMVG/multiview/CMakeFiles/openMVG_multiview.dir/all] Errore 2
make[4]: *** [Makefile:136: all] Errore 2
make[3]: *** [external/CMakeFiles/openMVG-external.dir/build.make:86: external/openMVG-external-prefix/src/openMVG-external-
stamp/openMVG-external-build] Errore 2
make[2]: *** [CMakeFiles/Makefile2:254: external/CMakeFiles/openMVG-external.dir/all] Errore 2
make[1]: *** [CMakeFiles/Makefile2:261: external/CMakeFiles/openMVG-external.dir/rule] Errore 2
make: *** [Makefile:218: openMVG-external] Errore 2
Thank you
Edited by Emmanuel Durand