DeepFactors icon indicating copy to clipboard operation
DeepFactors copied to clipboard

I encountered an error while compiling DeepFactors,does anyone know how to fix this?

Open ljwcdjj9152 opened this issue 1 year ago • 0 comments

[ 27%] Building CXX object sources/core/CMakeFiles/df_core.dir/gtsam/photometric_factor.cpp.o In file included from /usr/include/boost/smart_ptr/make_shared.hpp:14:0, from /usr/include/boost/archive/detail/helper_collection.hpp:28, from /usr/include/boost/archive/detail/basic_iarchive.hpp:28, from /usr/include/boost/serialization/collections_load_imp.hpp:35, from /usr/include/boost/serialization/list.hpp:24, from /usr/local/include/gtsam/base/FastList.h:25, from /usr/local/include/gtsam/inference/Key.h:20, from /usr/local/include/gtsam/inference/Factor.h:28, from /usr/local/include/gtsam/linear/GaussianFactor.h:23, from /usr/local/include/gtsam/linear/HessianFactor.h:21, from /home/ljw/DeepFactors/sources/core/gtsam/photometric_factor.cpp:21: /usr/include/boost/smart_ptr/make_shared_object.hpp: In instantiation of ‘typename boost::detail::sp_if_not_array<T>::type boost::make_shared(Args&& ...) [with T = gtsam::HessianFactor; Args = {const std::vector<long unsigned int, std::allocator >&, std::vector<Eigen::Matrix<double, -1, -1, 0, -1, -1>, std::allocator<Eigen::Matrix<double, -1, -1, 0, -1, -1> > >&, std::vector<Eigen::Matrix<double, -1, 1, 0, -1, 1>, std::allocator<Eigen::Matrix<double, -1, 1, 0, -1, 1> > >&, double}; typename boost::detail::sp_if_not_array<T>::type = boost::shared_ptrgtsam::HessianFactor]’: /home/ljw/DeepFactors/sources/core/gtsam/photometric_factor.cpp:180:50: required from ‘boost::shared_ptrgtsam::GaussianFactor df::PhotometricFactor<Scalar, CS>::linearize(const gtsam::Values&) const [with Scalar = float; int CS = 32]’ /home/ljw/DeepFactors/sources/core/gtsam/photometric_factor.cpp:345:16: required from here /usr/include/boost/smart_ptr/make_shared_object.hpp:256:5: error: no matching function for call to ‘gtsam::HessianFactor::HessianFactor(const std::vector&, std::vector<Eigen::Matrix<double, -1, -1> >&, std::vector<Eigen::Matrix<double, -1, 1> >&, double)’ ::new( pv ) T( boost::detail::sp_forward<Args>( args )... ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /home/ljw/DeepFactors/sources/core/gtsam/photometric_factor.cpp:21:0: /usr/local/include/gtsam/linear/HessianFactor.h:361:5: note: candidate: gtsam::HessianFactor::HessianFactor(const gtsam::Scatter&) HessianFactor(const Scatter& scatter); ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:361:5: note: candidate expects 1 argument, 4 provided /usr/local/include/gtsam/linear/HessianFactor.h:178:14: note: candidate: gtsam::HessianFactor::HessianFactor(const gtsam::GaussianFactorGraph&, boost::optional<const gtsam::Scatter&>) explicit HessianFactor(const GaussianFactorGraph& factors, ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:178:14: note: candidate expects 2 arguments, 4 provided /usr/local/include/gtsam/linear/HessianFactor.h:175:14: note: candidate: gtsam::HessianFactor::HessianFactor(const gtsam::GaussianFactor&) explicit HessianFactor(const GaussianFactor& factor); ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:175:14: note: candidate expects 1 argument, 4 provided /usr/local/include/gtsam/linear/HessianFactor.h:171:14: note: candidate: gtsam::HessianFactor::HessianFactor(const gtsam::JacobianFactor&) explicit HessianFactor(const JacobianFactor& cg); ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:171:14: note: candidate expects 1 argument, 4 provided /usr/local/include/gtsam/linear/HessianFactor.h:168:5: note: candidate: template<class KEYS> gtsam::HessianFactor::HessianFactor(const KEYS&, const gtsam::SymmetricBlockMatrix&) HessianFactor(const KEYS& keys, const SymmetricBlockMatrix& augmentedInformation); ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:168:5: note: template argument deduction/substitution failed: In file included from /usr/include/boost/smart_ptr/make_shared.hpp:14:0, from /usr/include/boost/archive/detail/helper_collection.hpp:28, from /usr/include/boost/archive/detail/basic_iarchive.hpp:28, from /usr/include/boost/serialization/collections_load_imp.hpp:35, from /usr/include/boost/serialization/list.hpp:24, from /usr/local/include/gtsam/base/FastList.h:25, from /usr/local/include/gtsam/inference/Key.h:20, from /usr/local/include/gtsam/inference/Factor.h:28, from /usr/local/include/gtsam/linear/GaussianFactor.h:23, from /usr/local/include/gtsam/linear/HessianFactor.h:21, from /home/ljw/DeepFactors/sources/core/gtsam/photometric_factor.cpp:21: /usr/include/boost/smart_ptr/make_shared_object.hpp:256:5: note: candidate expects 2 arguments, 4 provided ::new( pv ) T( boost::detail::sp_forward<Args>( args )... ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /home/ljw/DeepFactors/sources/core/gtsam/photometric_factor.cpp:21:0: /usr/local/include/gtsam/linear/HessianFactor.h:162:5: note: candidate: gtsam::HessianFactor::HessianFactor(const KeyVector&, const std::vector<Eigen::Matrix<double, -1, -1> >&, const std::vector<Eigen::Matrix<double, -1, 1> >&, double) HessianFactor(const KeyVector& js, const std::vector<Matrix>& Gs, ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:162:5: note: no known conversion for argument 1 from ‘const std::vector’ to ‘const KeyVector& {aka const std::vector<long unsigned int, tbb::tbb_allocator >&}’ /usr/local/include/gtsam/linear/HessianFactor.h:153:5: note: candidate: gtsam::HessianFactor::HessianFactor(gtsam::Key, gtsam::Key, gtsam::Key, const Matrix&, const Matrix&, const Matrix&, const Vector&, const Matrix&, const Matrix&, const Vector&, const Matrix&, const Vector&, double) HessianFactor(Key j1, Key j2, Key j3, ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:153:5: note: candidate expects 13 arguments, 4 provided /usr/local/include/gtsam/linear/HessianFactor.h:145:5: note: candidate: gtsam::HessianFactor::HessianFactor(gtsam::Key, gtsam::Key, const Matrix&, const Matrix&, const Vector&, const Matrix&, const Vector&, double) HessianFactor(Key j1, Key j2, ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:145:5: note: candidate expects 8 arguments, 4 provided /usr/local/include/gtsam/linear/HessianFactor.h:128:5: note: candidate: gtsam::HessianFactor::HessianFactor(gtsam::Key, const Vector&, const Matrix&) HessianFactor(Key j, const Vector& mu, const Matrix& Sigma); ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:128:5: note: candidate expects 3 arguments, 4 provided /usr/local/include/gtsam/linear/HessianFactor.h:123:5: note: candidate: gtsam::HessianFactor::HessianFactor(gtsam::Key, const Matrix&, const Vector&, double) HessianFactor(Key j, const Matrix& G, const Vector& g, double f); ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:123:5: note: no known conversion for argument 1 from ‘const std::vector’ to ‘gtsam::Key {aka long unsigned int}’ /usr/local/include/gtsam/linear/HessianFactor.h:116:5: note: candidate: gtsam::HessianFactor::HessianFactor() HessianFactor(); ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:116:5: note: candidate expects 0 arguments, 4 provided /usr/local/include/gtsam/linear/HessianFactor.h:101:22: note: candidate: gtsam::HessianFactor::HessianFactor(const gtsam::HessianFactor&) class GTSAM_EXPORT HessianFactor : public GaussianFactor { ^~~~~~~~~~~~~ /usr/local/include/gtsam/linear/HessianFactor.h:101:22: note: candidate expects 1 argument, 4 provided cc1plus: warning: unrecognized command line option ‘-Wno-catch-value’ sources/core/CMakeFiles/df_core.dir/build.make:86: recipe for target 'sources/core/CMakeFiles/df_core.dir/gtsam/photometric_factor.cpp.o' failed make[2]: *** [sources/core/CMakeFiles/df_core.dir/gtsam/photometric_factor.cpp.o] Error 1 CMakeFiles/Makefile2:195: recipe for target 'sources/core/CMakeFiles/df_core.dir/all' failed make[1]: *** [sources/core/CMakeFiles/df_core.dir/all] Error 2 Makefile:129: recipe for target 'all' failed

ljwcdjj9152 avatar Apr 20 '23 04:04 ljwcdjj9152