/usr/include/gtsam/base/OptionalJacobian.h:126:43: error: function definition does not declare parameters
126 | OptionalJacobian(std::nulloptt /none/) :
| ^
/usr/include/gtsam/base/OptionalJacobian.h:131:31: error: ‘optional’ in namespace ‘std’ does not name a template type
131 | OptionalJacobian(const std::optional<std::referencewrapperEigen::MatrixXd> optional) :
| ^~~~~~~~
/usr/include/gtsam/base/OptionalJacobian.h:131:26: note: ‘std::optional’ is only available from C++17 onwards
131 | OptionalJacobian(const std::optionalstd::reference_wrapper<Eigen::MatrixXd> optional) :
| ^~~
/usr/include/gtsam/base/OptionalJacobian.h:131:39: error: expected ‘,’ or ‘...’ before ‘<’ token
131 | OptionalJacobian(const std::optionalstd::reference_wrapper<Eigen::MatrixXd> optional) :
| ^
/usr/include/gtsam/base/OptionalJacobian.h: In constructor ‘gtsam::OptionalJacobian::OptionalJacobian(int)’:
/usr/include/gtsam/base/OptionalJacobian.h:133:9: error: ‘optional’ was not declared in this scope; did you mean ‘optind’?
133 | if (optional) {
| ^~~~~~~~
| optind
/usr/include/gtsam/base/OptionalJacobian.h: At global scope:
/usr/include/gtsam/base/OptionalJacobian.h:214:43: error: function definition does not declare parameters
214 | OptionalJacobian(std::nulloptt /none/) :
| ^
/usr/include/gtsam/base/OptionalJacobian.h:219:31: error: ‘optional’ in namespace ‘std’ does not name a template type
219 | OptionalJacobian(const std::optional<std::referencewrapperEigen::MatrixXd> optional) :
| ^~~~~~~~
/usr/include/gtsam/base/OptionalJacobian.h:219:26: note: ‘std::optional’ is only available from C++17 onwards
219 | OptionalJacobian(const std::optionalstd::reference_wrapper<Eigen::MatrixXd> optional) :
| ^~~
/usr/include/gtsam/base/OptionalJacobian.h:219:39: error: expected ‘,’ or ‘...’ before ‘<’ token
219 | OptionalJacobian(const std::optionalstd::reference_wrapper<Eigen::MatrixXd> optional) :
| ^
/usr/include/gtsam/base/OptionalJacobian.h: In constructor ‘gtsam::OptionalJacobian<-1, -1>::OptionalJacobian(int)’:
/usr/include/gtsam/base/OptionalJacobian.h:221:9: error: ‘optional’ was not declared in this scope; did you mean ‘optind’?
221 | if (optional) pointer_ = &((optional).get());
| ^~~~~~~~
| optind
In file included from /usr/include/gtsam/nonlinear/NonlinearFactor.h:24,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/nonlinear/Values.h: In member function ‘std::uniqueptrgtsam::Values::ConstKeyValuePair gtsam::Values::derefiterator::operator->()’:
/usr/include/gtsam/nonlinear/Values.h:193:21: error: ‘makeunique’ is not a member of ‘std’
193 | return std::makeunique(it->first, *(it->second));
| ^~~~~~~~~~~
/usr/include/gtsam/nonlinear/Values.h:193:21: note: ‘std::makeunique’ is only available from C++14 onwards
/usr/include/gtsam/nonlinear/Values.h:193:50: error: expected primary-expression before ‘>’ token
193 | return std::makeunique(it->first, *(it->second));
| ^
In file included from /usr/include/gtsam/nonlinear/NonlinearFactor.h:25,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/linear/NoiseModel.h: At global scope:
/usr/include/gtsam/linear/NoiseModel.h:173:12: error: ‘optional’ in namespace ‘std’ does not name a template type
173 | std::optional sqrtinformation;
| ^~~~~~~~
/usr/include/gtsam/linear/NoiseModel.h:173:7: note: ‘std::optional’ is only available from C++17 onwards
173 | std::optional sqrtinformation;
| ^~~
/usr/include/gtsam/linear/NoiseModel.h:193:27: error: ‘optional’ in namespace ‘std’ does not name a template type
193 | const std::optional& sqrtinformation = {})
| ^~~~~~~~
/usr/include/gtsam/linear/NoiseModel.h:193:22: note: ‘std::optional’ is only available from C++17 onwards
193 | const std::optional& sqrtinformation = {})
| ^~~
/usr/include/gtsam/linear/NoiseModel.h:193:35: error: expected ‘,’ or ‘...’ before ‘<’ token
193 | const std::optional& sqrtinformation = {})
| ^
/usr/include/gtsam/linear/NoiseModel.h:193:16: error: default argument missing for parameter 2 of ‘gtsam::noiseModel::Gaussian::Gaussian(sizet, int)’
193 | const std::optional& sqrtinformation = {})
| ^~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/linear/NoiseModel.h:192:23: note: ...following parameter 1 which has a default argument
192 | Gaussian(sizet dim = 1,
| ~~~~~~~^~~~~~~
/usr/include/gtsam/linear/NoiseModel.h: In member function ‘const Matrix& gtsam::noiseModel::Gaussian::thisR() const’:
/usr/include/gtsam/linear/NoiseModel.h:182:14: error: ‘sqrtinformation’ was not declared in this scope; did you mean ‘SqrtInformation’?
182 | if (!sqrtinformation) throw std::runtimeerror("Gaussian: has no R matrix");
| ^~~~~~~~~~~~~~~~~
| SqrtInformation
/usr/include/gtsam/linear/NoiseModel.h:183:17: error: ‘sqrtinformation’ was not declared in this scope; did you mean ‘SqrtInformation’?
183 | return *sqrtinformation;
| ^~~~~~~~~~~~~~~~~
| SqrtInformation
/usr/include/gtsam/linear/NoiseModel.h: In constructor ‘gtsam::noiseModel::Gaussian::Gaussian(sizet, int)’:
/usr/include/gtsam/linear/NoiseModel.h:194:24: error: class ‘gtsam::noiseModel::Gaussian’ does not have any field named ‘sqrtinformation’
194 | : Base(dim), sqrtinformation(sqrtinformation) {}
| ^~~~~~~~~~~~~~~~~
/usr/include/gtsam/linear/NoiseModel.h:194:42: error: ‘sqrtinformation’ was not declared in this scope; did you mean ‘SqrtInformation’?
194 | : Base(dim), sqrtinformation(sqrtinformation) {}
| ^~~~~~~~~~~~~~~~
| SqrtInformation
/usr/include/gtsam/linear/NoiseModel.h: At global scope:
/usr/include/gtsam/linear/NoiseModel.h:734:23: error: ‘optional’ in namespace ‘std’ does not name a template type
734 | GTSAMEXPORT std::optional checkIfDiagonal(const Matrix& M);
| ^~~~~~~~
/usr/include/gtsam/linear/NoiseModel.h:734:18: note: ‘std::optional’ is only available from C++17 onwards
734 | GTSAMEXPORT std::optional checkIfDiagonal(const Matrix& M);
| ^~~
In file included from /usr/include/gtsam/linear/linearExceptions.h:20,
from /usr/include/gtsam/linear/JacobianFactor-inl.h:21,
from /usr/include/gtsam/linear/JacobianFactor.h:469,
from /usr/include/gtsam/nonlinear/NonlinearFactor.h:26,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/base/ThreadsafeException.h:56:16: error: ‘optional’ in namespace ‘std’ does not name a template type
56 | mutable std::optional description; ///< Optional description
| ^~~~~~~~
/usr/include/gtsam/base/ThreadsafeException.h:56:11: note: ‘std::optional’ is only available from C++17 onwards
56 | mutable std::optional description; ///< Optional description
| ^~~
/usr/include/gtsam/base/ThreadsafeException.h: In constructor ‘gtsam::ThreadsafeException::ThreadsafeException(const string&)’:
/usr/include/gtsam/base/ThreadsafeException.h:70:24: error: class ‘gtsam::ThreadsafeException’ does not have any field named ‘description’
70 | dynamic(false), description(
| ^~~~~~~~~~~~
/usr/include/gtsam/base/ThreadsafeException.h: In member function ‘const char gtsam::ThreadsafeException::what() const’:
/usr/include/gtsam/base/ThreadsafeException.h:80:12: error: ‘description’ was not declared in this scope
80 | return description ? description->cstr() : "";
| ^~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/nonlinear/NonlinearFactor.h: At global scope:
/usr/include/gtsam/nonlinear/NonlinearFactor.h:469:33: error: ‘enableift’ in namespace ‘std’ does not name a template type; did you mean ‘enableif’?
469 | using AreAllMatrixRefs = std::enableift<(... &&
| ^~~~~~~~~~~
| enableif
/usr/include/gtsam/nonlinear/NonlinearFactor.h:473:54: error: ‘decayt’ in namespace ‘std’ does not name a template type; did you mean ‘decay’?
473 | using IsMatrixPointer = std::issame, Matrix>;
| ^~~~~~~
| decay
/usr/include/gtsam/nonlinear/NonlinearFactor.h:473:61: error: expected template-argument before ‘<’ token
473 | using IsMatrixPointer = std::issame<typename std::decayt, Matrix>;
| ^
/usr/include/gtsam/nonlinear/NonlinearFactor.h:473:61: error: expected ‘>’ before ‘<’ token
/usr/include/gtsam/nonlinear/NonlinearFactor.h:473:75: error: wrong number of template arguments (1, should be 2)
473 | using IsMatrixPointer = std::issame<typename std::decayt, Matrix>;
| ^
In file included from /usr/include/c++/9/bits/move.h:55,
from /usr/include/c++/9/bits/stlpair.h:59,
from /usr/include/c++/9/bits/stlalgobase.h:64,
from /usr/include/c++/9/vector:60,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/typetraits:1285:12: note: provided for ‘template struct std::issame’
1285 | struct issame
| ^~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/nonlinear/NonlinearFactor.h:476:52: error: ‘decayt’ in namespace ‘std’ does not name a template type; did you mean ‘decay’?
476 | using IsNullpointer = std::issame<typename std::decayt, std::nullptrt>;
| ^~~~~~~
| decay
/usr/include/gtsam/nonlinear/NonlinearFactor.h:476:59: error: expected template-argument before ‘<’ token
476 | using IsNullpointer = std::issame, std::nullptrt>;
| ^
/usr/include/gtsam/nonlinear/NonlinearFactor.h:476:59: error: expected ‘>’ before ‘<’ token
/usr/include/gtsam/nonlinear/NonlinearFactor.h:476:80: error: wrong number of template arguments (1, should be 2)
476 | using IsNullpointer = std::issame, std::nullptrt>;
| ^
In file included from /usr/include/c++/9/bits/move.h:55,
from /usr/include/c++/9/bits/stlpair.h:59,
from /usr/include/c++/9/bits/stlalgobase.h:64,
from /usr/include/c++/9/vector:60,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/typetraits:1285:12: note: provided for ‘template struct std::issame’
1285 | struct issame
| ^~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/nonlinear/NonlinearFactor.h:483:35: error: ‘enableift’ in namespace ‘std’ does not name a template type; did you mean ‘enableif’?
483 | using AreAllMatrixPtrs = std::enableift<(... &&
| ^~~~~~~~~~~
| enableif
/usr/include/gtsam/nonlinear/NonlinearFactor.h:675:10: error: ‘AreAllMatrixRefs’ does not name a type
675 | inline AreAllMatrixRefs evaluateError(const ValueTypes&... x,
| ^~~~~~~~~~~~~~~~
/usr/include/gtsam/nonlinear/NonlinearFactor.h:685:10: error: ‘AreAllMatrixPtrs’ does not name a type
685 | inline AreAllMatrixPtrs evaluateError(const ValueTypes&... x,
| ^~~~~~~~~~~~~~~~
In file included from /usr/include/gtsam/geometry/CalibratedCamera.h:22,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:5,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/geometry/Point2.h:70:19: error: ‘optional’ in namespace ‘std’ does not name a template type
70 | GTSAMEXPORT std::optional circleCircleIntersection(double Rd, double rd, double tol = 1e-9);
| ^~~~~~~~
/usr/include/gtsam/geometry/Point2.h:70:14: note: ‘std::optional’ is only available from C++17 onwards
70 | GTSAMEXPORT std::optional circleCircleIntersection(double Rd, double rd, double tol = 1e-9);
| ^~~
/usr/include/gtsam/geometry/Point2.h:78:84: error: ‘std::optional’ has not been declared
78 | GTSAMEXPORT std::list circleCircleIntersection(Point2 c1, Point2 c2, std::optional fh);
| ^~~~~~~~
/usr/include/gtsam/geometry/Point2.h:78:92: error: expected ‘,’ or ‘...’ before ‘<’ token
78 | GTSAMEXPORT std::list circleCircleIntersection(Point2 c1, Point2 c2, std::optional fh);
| ^
In file included from /usr/include/gtsam/geometry/Rot3.h:26,
from /usr/include/gtsam/geometry/Pose3.h:24,
from /usr/include/gtsam/geometry/CalibratedCamera.h:23,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:5,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/geometry/Unit3.h:47:16: error: ‘optional’ in namespace ‘std’ does not name a template type
47 | mutable std::optional B; ///< Cached basis
| ^~~~~~~~
/usr/include/gtsam/geometry/Unit3.h:47:11: note: ‘std::optional’ is only available from C++17 onwards
47 | mutable std::optional B; ///< Cached basis
| ^~~
/usr/include/gtsam/geometry/Unit3.h:48:16: error: ‘optional’ in namespace ‘std’ does not name a template type
48 | mutable std::optional HB; ///< Cached basis derivative
| ^~~~~~~~
/usr/include/gtsam/geometry/Unit3.h:48:11: note: ‘std::optional’ is only available from C++17 onwards
48 | mutable std::optional HB; ///< Cached basis derivative
| ^~~
/usr/include/gtsam/geometry/Unit3.h: In member function ‘gtsam::Unit3& gtsam::Unit3::operator=(const gtsam::Unit3&)’:
/usr/include/gtsam/geometry/Unit3.h:86:5: error: ‘B’ was not declared in this scope; did you mean ‘p’?
86 | B_ = u.B;
| ^~
| p
/usr/include/gtsam/geometry/Unit3.h:86:12: error: ‘const class gtsam::Unit3’ has no member named ‘B’; did you mean ‘p’?
86 | B_ = u.B;
| ^~
| p
/usr/include/gtsam/geometry/Unit3.h:87:5: error: ‘HB’ was not declared in this scope
87 | HB = u.HB;
| ^~~~
/usr/include/gtsam/geometry/Unit3.h:87:14: error: ‘const class gtsam::Unit3’ has no member named ‘HB’
87 | HB = u.HB;
| ^~~~
In file included from /usr/include/gtsam/geometry/CalibratedCamera.h:23,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:5,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/geometry/Pose3.h: At global scope:
/usr/include/gtsam/geometry/Pose3.h:86:15: error: ‘optional’ in namespace ‘std’ does not name a template type
86 | static std::optional Align(const Point3Pairs& abPointPairs);
| ^~~~~~~~
/usr/include/gtsam/geometry/Pose3.h:86:10: note: ‘std::optional’ is only available from C++17 onwards
86 | static std::optional Align(const Point3Pairs& abPointPairs);
| ^~~
/usr/include/gtsam/geometry/Pose3.h:89:15: error: ‘optional’ in namespace ‘std’ does not name a template type
89 | static std::optional Align(const Matrix& a, const Matrix& b);
| ^~~~~~~~
/usr/include/gtsam/geometry/Pose3.h:89:10: note: ‘std::optional’ is only available from C++17 onwards
89 | static std::optional Align(const Matrix& a, const Matrix& b);
| ^~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h: In member function ‘gtsam::NonlinearFactor::sharedptr stellavslam::optimize::internalgtsam::ProjectionFactor::clone() const’:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:68:23: error: ‘staticpointercast’ is not a member of ‘boost’; did you mean ‘std::staticpointercast’?
68 | return boost::staticpointercastgtsam::NonlinearFactor(
| ^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/9/memory:81,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:9,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/bits/sharedptr.h:491:5: note: ‘std::staticpointercast’ declared here
491 | staticpointercast(const sharedptr<Up>& _r) noexcept
| ^~~~~~~~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:68:65: error: expected primary-expression before ‘>’ token
68 | return boost::staticpointercastgtsam::NonlinearFactor(
| ^
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h: In member function ‘gtsam::NonlinearFactor::sharedptr stellavslam::optimize::internalgtsam::StereoProjectionFactor::clone() const’:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:246:23: error: ‘staticpointercast’ is not a member of ‘boost’; did you mean ‘std::staticpointercast’?
246 | return boost::staticpointercastgtsam::NonlinearFactor(
| ^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/9/memory:81,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:9,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/bits/sharedptr.h:491:5: note: ‘std::staticpointercast’ declared here
491 | staticpointercast(const sharedptr<Up>& _r) noexcept
| ^~~~~~~~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:246:65: error: expected primary-expression before ‘>’ token
246 | return boost::staticpointercastgtsam::NonlinearFactor(
| ^
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h: In member function ‘gtsam::NonlinearFactor::sharedptr stellavslam::optimize::internalgtsam::PoseOptFactor::clone() const’:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:320:23: error: ‘staticpointercast’ is not a member of ‘boost’; did you mean ‘std::staticpointercast’?
320 | return boost::staticpointercastgtsam::NonlinearFactor(
| ^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/9/memory:81,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:9,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/bits/sharedptr.h:491:5: note: ‘std::staticpointercast’ declared here
491 | staticpointercast(const sharedptr<Up>& _r) noexcept
| ^~~~~~~~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:320:65: error: expected primary-expression before ‘>’ token
320 | return boost::staticpointercastgtsam::NonlinearFactor(
| ^
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h: In member function ‘gtsam::NonlinearFactor::sharedptr stellavslam::optimize::internalgtsam::StereoPoseOptFactor::clone() const’:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:369:23: error: ‘staticpointercast’ is not a member of ‘boost’; did you mean ‘std::staticpointercast’?
369 | return boost::staticpointercastgtsam::NonlinearFactor(
| ^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/9/memory:81,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:9,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/bits/sharedptr.h:491:5: note: ‘std::staticpointercast’ declared here
491 | staticpointercast(const sharedptr<Up>& _r) noexcept
| ^~~~~~~~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:369:65: error: expected primary-expression before ‘>’ token
369 | return boost::staticpointercastgtsam::NonlinearFactor(
| ^
In file included from /usr/include/gtsam/nonlinear/GraphvizFormatting.h:21,
from /usr/include/gtsam/nonlinear/NonlinearFactorGraph.h:26,
from /usr/include/gtsam/nonlinear/NonlinearOptimizer.h:21,
from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:23,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/gtsam/inference/DotWriter.h: At global scope:
/usr/include/gtsam/inference/DotWriter.h:84:32: error: ‘optional’ in namespace ‘std’ does not name a template type
84 | const std::optional& position,
| ^~~~~~~~
/usr/include/gtsam/inference/DotWriter.h:84:27: note: ‘std::optional’ is only available from C++17 onwards
84 | const std::optional& position,
| ^~~
/usr/include/gtsam/inference/DotWriter.h:84:40: error: expected ‘,’ or ‘...’ before ‘<’ token
84 | const std::optional& position,
| ^
/usr/include/gtsam/inference/DotWriter.h:88:47: error: ‘optional’ in namespace ‘std’ does not name a template type
88 | static void DrawFactor(sizet i, const std::optional& position,
| ^~~~~~~~
/usr/include/gtsam/inference/DotWriter.h:88:42: note: ‘std::optional’ is only available from C++17 onwards
88 | static void DrawFactor(sizet i, const std::optional& position,
| ^~~
/usr/include/gtsam/inference/DotWriter.h:88:55: error: expected ‘,’ or ‘...’ before ‘<’ token
88 | static void DrawFactor(sizet i, const std::optional& position,
| ^
/usr/include/gtsam/inference/DotWriter.h:92:8: error: ‘optional’ in namespace ‘std’ does not name a template type
92 | std::optional variablePos(Key key) const;
| ^~~~~~~~
/usr/include/gtsam/inference/DotWriter.h:92:3: note: ‘std::optional’ is only available from C++17 onwards
92 | std::optional variablePos(Key key) const;
| ^~~
/usr/include/gtsam/inference/DotWriter.h:97:33: error: ‘optional’ in namespace ‘std’ does not name a template type
97 | const std::optional& position,
| ^~~~~~~~
/usr/include/gtsam/inference/DotWriter.h:97:28: note: ‘std::optional’ is only available from C++17 onwards
97 | const std::optional& position,
| ^~~
/usr/include/gtsam/inference/DotWriter.h:97:41: error: expected ‘,’ or ‘...’ before ‘<’ token
97 | const std::optional& position,
| ^
In file included from /usr/include/gtsam/nonlinear/NonlinearFactorGraph.h:26,
from /usr/include/gtsam/nonlinear/NonlinearOptimizer.h:21,
from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:23,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/gtsam/nonlinear/GraphvizFormatting.h:56:8: error: ‘optional’ in namespace ‘std’ does not name a template type
56 | std::optional extractPosition(const Value& value) const;
| ^~~~~~~~
/usr/include/gtsam/nonlinear/GraphvizFormatting.h:56:3: note: ‘std::optional’ is only available from C++17 onwards
56 | std::optional extractPosition(const Value& value) const;
| ^~~
/usr/include/gtsam/nonlinear/GraphvizFormatting.h:59:8: error: ‘optional’ in namespace ‘std’ does not name a template type
59 | std::optional variablePos(const Values& values, const Vector2& min,
| ^~~~~~~~
/usr/include/gtsam/nonlinear/GraphvizFormatting.h:59:3: note: ‘std::optional’ is only available from C++17 onwards
59 | std::optional variablePos(const Values& values, const Vector2& min,
| ^~~
/usr/include/gtsam/nonlinear/GraphvizFormatting.h:63:8: error: ‘optional’ in namespace ‘std’ does not name a template type
63 | std::optional factorPos(const Vector2& min, sizet i) const;
| ^~~~~~~~
/usr/include/gtsam/nonlinear/GraphvizFormatting.h:63:3: note: ‘std::optional’ is only available from C++17 onwards
63 | std::optional factorPos(const Vector2& min, sizet i) const;
| ^~~
In file included from /usr/include/gtsam/inference/FactorGraph.h:451,
from /usr/include/gtsam/nonlinear/NonlinearFactorGraph.h:27,
from /usr/include/gtsam/nonlinear/NonlinearOptimizer.h:21,
from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:23,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/gtsam/inference/FactorGraph-inst.h: In member function ‘void gtsam::FactorGraph::dot(std::ostream&, const KeyFormatter&, const gtsam::DotWriter&) const’:
/usr/include/gtsam/inference/FactorGraph-inst.h:148:28: error: ‘const struct gtsam::DotWriter’ has no member named ‘variablePos’; did you mean ‘variablePositions’?
148 | auto position = writer.variablePos(key);
| ^~~~~~~~~~~
| variablePositions
/usr/include/gtsam/inference/FactorGraph-inst.h:158:64: error: no matching function for call to ‘gtsam::DotWriter::processFactor(sizet&, const KeyVector&, const KeyFormatter&, , std::ostream) const’
158 | writer.processFactor(i, factorKeys, keyFormatter, {}, &os);
| ^
In file included from /usr/include/gtsam/nonlinear/GraphvizFormatting.h:21,
from /usr/include/gtsam/nonlinear/NonlinearFactorGraph.h:26,
from /usr/include/gtsam/nonlinear/NonlinearOptimizer.h:21,
from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:23,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/gtsam/inference/DotWriter.h:95:8: note: candidate: ‘void gtsam::DotWriter::processFactor(sizet, const KeyVector&, const KeyFormatter&, int) const’
95 | void processFactor(sizet i, const KeyVector& keys,
| ^~~~~~~~~~~~~
/usr/include/gtsam/inference/DotWriter.h:95:8: note: candidate expects 4 arguments, 5 provided
In file included from /usr/include/gtsam/linear/GaussianFactorGraph.h:25,
from /usr/include/gtsam/nonlinear/NonlinearOptimizerParams.h:24,
from /usr/include/gtsam/nonlinear/NonlinearOptimizer.h:22,
from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:23,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/gtsam/inference/EliminateableFactorGraph.h: At global scope:
/usr/include/gtsam/inference/EliminateableFactorGraph.h:94:18: error: ‘optional’ in namespace ‘std’ does not name a template type
94 | typedef std::optional> OptionalVariableIndex;
| ^~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:94:13: note: ‘std::optional’ is only available from C++17 onwards
94 | typedef std::optional> OptionalVariableIndex;
| ^~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:97:18: error: ‘optional’ in namespace ‘std’ does not name a template type
97 | typedef std::optionalOrdering::OrderingType OptionalOrderingType;
| ^~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:97:13: note: ‘std::optional’ is only available from C++17 onwards
97 | typedef std::optionalOrdering::OrderingType OptionalOrderingType;
| ^~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:120:7: error: ‘OptionalOrderingType’ has not been declared
120 | OptionalOrderingType orderingType = {},
| ^~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:122:7: error: ‘OptionalVariableIndex’ has not been declared
122 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:141:7: error: ‘OptionalVariableIndex’ has not been declared
141 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:160:7: error: ‘OptionalOrderingType’ has not been declared
160 | OptionalOrderingType orderingType = {},
| ^~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:162:7: error: ‘OptionalVariableIndex’ has not been declared
162 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:176:7: error: ‘OptionalVariableIndex’ has not been declared
176 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:186:7: error: ‘OptionalVariableIndex’ has not been declared
186 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:196:7: error: ‘OptionalVariableIndex’ has not been declared
196 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:206:7: error: ‘OptionalVariableIndex’ has not been declared
206 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:216:7: error: ‘OptionalVariableIndex’ has not been declared
216 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:230:7: error: ‘OptionalVariableIndex’ has not been declared
230 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:246:7: error: ‘OptionalVariableIndex’ has not been declared
246 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:260:7: error: ‘OptionalVariableIndex’ has not been declared
260 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:276:7: error: ‘OptionalVariableIndex’ has not been declared
276 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/gtsam/inference/EliminateableFactorGraph.h:282:7: error: ‘OptionalVariableIndex’ has not been declared
282 | OptionalVariableIndex variableIndex = {}) const;
| ^~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/gtsam/nonlinear/NonlinearOptimizerParams.h:24,
from /usr/include/gtsam/nonlinear/NonlinearOptimizer.h:22,
from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:23,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/gtsam/linear/GaussianFactorGraph.h:61:14: error: ‘std::optional’ has not been declared
61 | std::optional<std::referencewrapper> variableIndex) {
| ^~~~~~~~
/usr/include/gtsam/linear/GaussianFactorGraph.h:61:22: error: expected ‘,’ or ‘...’ before ‘<’ token
61 | std::optional> variableIndex) {
| ^
/usr/include/gtsam/linear/GaussianFactorGraph.h: In static member function ‘static gtsam::Ordering gtsam::EliminationTraitsgtsam::GaussianFactorGraph::DefaultOrderingFunc(const FactorGraphType&, int)’:
/usr/include/gtsam/linear/GaussianFactorGraph.h:62:33: error: ‘variableIndex’ was not declared in this scope; did you mean ‘VariableIndex’?
62 | return Ordering::Colamd((variableIndex).get());
| ^~~~~~~~~~~~~
| VariableIndex
In file included from /usr/include/gtsam/nonlinear/NonlinearOptimizer.h:22,
from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:23,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/gtsam/nonlinear/NonlinearOptimizerParams.h: At global scope:
/usr/include/gtsam/nonlinear/NonlinearOptimizerParams.h:108:8: error: ‘optional’ in namespace ‘std’ does not name a template type
108 | std::optional ordering; ///< The optional variable elimination ordering, or empty to use COLAMD (default: empty)
| ^~~~~~~~
/usr/include/gtsam/nonlinear/NonlinearOptimizerParams.h:108:3: note: ‘std::optional’ is only available from C++17 onwards
108 | std::optional ordering; ///< The optional variable elimination ordering, or empty to use COLAMD (default: empty)
| ^~~
/usr/include/gtsam/nonlinear/NonlinearOptimizerParams.h: In member function ‘void gtsam::NonlinearOptimizerParams::setOrdering(const gtsam::Ordering&)’:
/usr/include/gtsam/nonlinear/NonlinearOptimizerParams.h:173:11: error: ‘class gtsam::NonlinearOptimizerParams’ has no member named ‘ordering’; did you mean ‘orderingType’?
173 | this->ordering = ordering;
| ^~~~~~~~
| orderingType
In file included from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:24,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/gtsam/nonlinear/LevenbergMarquardtParams.h: In static member function ‘static gtsam::LevenbergMarquardtParams gtsam::LevenbergMarquardtParams::EnsureHasOrdering(gtsam::LevenbergMarquardtParams, const gtsam::NonlinearFactorGraph&)’:
/usr/include/gtsam/nonlinear/LevenbergMarquardtParams.h:114:17: error: ‘class gtsam::LevenbergMarquardtParams’ has no member named ‘ordering’; did you mean ‘orderingType’?
114 | if (!params.ordering)
| ^~~~~~~~
| orderingType
/usr/include/gtsam/nonlinear/LevenbergMarquardtParams.h:115:14: error: ‘class gtsam::LevenbergMarquardtParams’ has no member named ‘ordering’; did you mean ‘orderingType’?
115 | params.ordering = Ordering::Create(params.orderingType, graph);
| ^~~~~~~~
| orderingType
/usr/include/gtsam/nonlinear/LevenbergMarquardtParams.h: In static member function ‘static gtsam::LevenbergMarquardtParams gtsam::LevenbergMarquardtParams::ReplaceOrdering(gtsam::LevenbergMarquardtParams, const gtsam::Ordering&)’:
/usr/include/gtsam/nonlinear/LevenbergMarquardtParams.h:121:12: error: ‘class gtsam::LevenbergMarquardtParams’ has no member named ‘ordering’; did you mean ‘orderingType’?
121 | params.ordering = ordering;
| ^~~~~~~~
| orderingType
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h: In instantiation of ‘class stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> >’:
/usr/include/c++/9/typetraits:1294:12: required from ‘struct std::isbaseof<gtsam::NonlinearFactor, stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 > >’
/usr/include/gtsam/inference/FactorGraph.h:114:9: required by substitution of ‘template template using IsDerived = typename std::enableif<std::isbaseof<Tp, Up>::value>::type [with DERIVEDFACTOR = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; FACTOR = gtsam::NonlinearFactor]’
/usr/include/gtsam/inference/FactorGraph.h:193:28: required by substitution of ‘template gtsam::FactorGraphgtsam::NonlinearFactor::IsDerived gtsam::FactorGraphgtsam::NonlinearFactor::emplaceshared(Args&& ...) [with DERIVEDFACTOR = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; Args = ]’
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:111:130: required from here
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:303:19: error: ‘gtsam::Vector stellavslam::optimize::internalgtsam::PoseOptFactor::evaluateError(const gtsam::Pose3&, boost::optional&>) const [with POSE = gtsam::Pose3; LANDMARK = Eigen::Matrix; CALIBRATION = gtsam::Cal3S2; CAMERA = stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2>; gtsam::Vector = Eigen::Matrix]’ marked ‘override’, but does not override
303 | gtsam::Vector evaluateError(const gtsam::Pose3& pose,
| ^~~~~~~~~~~~~
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h: In instantiation of ‘class stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >’:
/usr/include/c++/9/typetraits:1294:12: required from ‘struct std::isbaseof, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera > >’
/usr/include/gtsam/inference/FactorGraph.h:114:9: required by substitution of ‘template template using IsDerived = typename std::enableif<std::isbaseof<Tp, Up>::value>::type [with DERIVEDFACTOR = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >; FACTOR = gtsam::NonlinearFactor]’
/usr/include/gtsam/inference/FactorGraph.h:193:28: required by substitution of ‘template gtsam::FactorGraphgtsam::NonlinearFactor::IsDerived gtsam::FactorGraphgtsam::NonlinearFactor::emplaceshared(Args&& ...) [with DERIVEDFACTOR = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera >; Args = ]’
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:121:130: required from here
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:303:19: error: ‘gtsam::Vector stellavslam::optimize::internalgtsam::PoseOptFactor::evaluateError(const gtsam::Pose3&, boost::optional&>) const [with POSE = gtsam::Pose3; LANDMARK = Eigen::Matrix; CALIBRATION = stellavslam::optimize::internalgtsam::SphericalCameraCalibration; CAMERA = stellavslam::optimize::internalgtsam::SphericalCamera; gtsam::Vector = Eigen::Matrix]’ marked ‘override’, but does not override
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h: In instantiation of ‘class stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>’:
/usr/include/c++/9/typetraits:1294:12: required from ‘struct std::isbaseof<gtsam::NonlinearFactor, stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera> >’
/usr/include/gtsam/inference/FactorGraph.h:114:9: required by substitution of ‘template template using IsDerived = typename std::enableif<std::isbaseof<Tp, Up>::value>::type [with DERIVEDFACTOR = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; FACTOR = gtsam::NonlinearFactor]’
/usr/include/gtsam/inference/FactorGraph.h:193:28: required by substitution of ‘template gtsam::FactorGraphgtsam::NonlinearFactor::IsDerived gtsam::FactorGraphgtsam::NonlinearFactor::emplaceshared(Args&& ...) [with DERIVEDFACTOR = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; Args = ]’
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:142:127: required from here
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:352:19: error: ‘gtsam::Vector stellavslam::optimize::internalgtsam::StereoPoseOptFactor::evaluateError(const gtsam::Pose3&, boost::optional&>) const [with POSE = gtsam::Pose3; LANDMARK = Eigen::Matrix; CALIBRATION = gtsam::Cal3S2Stereo; STEREOCAMERA = gtsam::StereoCamera; gtsam::Vector = Eigen::Matrix]’ marked ‘override’, but does not override
352 | gtsam::Vector evaluateError(const gtsam::Pose3& pose,
| ^~~~~~~~~~~~~
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc: In member function ‘virtual unsigned int stellavslam::optimize::poseoptimizergtsam::optimize(const Mat44t&, const stellavslam::data::frameobservation&, const stellavslam::feature::orb_params, const stellavslam::camera::base*, const std::vector<std::sharedptr >&, stellavslam::Mat44t&, std::vector&) const’:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:182:183: error: no matching function for call to ‘dynamicpointercast<stellavslam::optimize::internalgtsam::PoseOptFactorBase > >(const std::sharedptrgtsam::NonlinearFactor&)’
182 | const auto& factor = (outlierfactors.at(i) == nullptr) ? boost::dynamicpointercast<internalgtsam::PoseOptFactorBase>(nonlinearfactor)
| ^
In file included from /usr/include/boost/sharedptr.hpp:17,
from /usr/include/boost/datetime/gregorian/gregmonth.hpp:14,
from /usr/include/boost/datetime/gregorian/gregymd.hpp:16,
from /usr/include/boost/datetime/gregorian/gregcalendar.hpp:17,
from /usr/include/boost/datetime/gregorian/gregoriantypes.hpp:19,
from /usr/include/boost/datetime/posixtime/posixtimeconfig.hpp:18,
from /usr/include/boost/datetime/posixtime/posixtimesystem.hpp:13,
from /usr/include/boost/datetime/posixtime/ptime.hpp:12,
from /usr/include/boost/datetime/posixtime/posixtime.hpp:15,
from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:26,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/boost/smartptr/sharedptr.hpp:898:42: note: candidate: ‘template boost::sharedptr boost::dynamicpointercast(const boost::sharedptr&)’
898 | template sharedptr dynamicpointercast( sharedptr const & r ) BOOSTSPNOEXCEPT
| ^~~~~~~~~~~~~~~~~~~~
/usr/include/boost/smartptr/sharedptr.hpp:898:42: note: template argument deduction/substitution failed:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:182:183: note: ‘const std::sharedptrgtsam::NonlinearFactor’ is not derived from ‘const boost::sharedptr’
182 | const auto& factor = (outlierfactors.at(i) == nullptr) ? boost::dynamicpointercast>(nonlinearfactor)
| ^
In file included from /usr/include/boost/sharedptr.hpp:17,
from /usr/include/boost/datetime/gregorian/gregmonth.hpp:14,
from /usr/include/boost/datetime/gregorian/gregymd.hpp:16,
from /usr/include/boost/datetime/gregorian/gregcalendar.hpp:17,
from /usr/include/boost/datetime/gregorian/gregoriantypes.hpp:19,
from /usr/include/boost/datetime/posixtime/posixtimeconfig.hpp:18,
from /usr/include/boost/datetime/posixtime/posixtimesystem.hpp:13,
from /usr/include/boost/datetime/posixtime/ptime.hpp:12,
from /usr/include/boost/datetime/posixtime/posixtime.hpp:15,
from /usr/include/gtsam/nonlinear/LevenbergMarquardtOptimizer.h:26,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:15:
/usr/include/boost/smartptr/sharedptr.hpp:940:42: note: candidate: ‘template boost::sharedptr boost::dynamicpointercast(boost::sharedptr&&)’
940 | template sharedptr dynamicpointercast( sharedptr && r ) BOOSTSPNOEXCEPT
| ^~~~~~~~~~~~~~~~~~~~
/usr/include/boost/smartptr/sharedptr.hpp:940:42: note: template argument deduction/substitution failed:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:182:183: note: types ‘boost::sharedptr’ and ‘const std::sharedptrgtsam::NonlinearFactor’ have incompatible cv-qualifiers
182 | const auto& factor = (outlierfactors.at(i) == nullptr) ? boost::dynamicpointercast>(nonlinearfactor)
| ^
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:206:56: error: no match for ‘operator=’ (operand types are ‘gtsam::FactorGraphgtsam::NonlinearFactor::sharedFactor’ {aka ‘std::sharedptrgtsam::NonlinearFactor’} and ‘gnucxx::alloctraits<std::allocator<boost::sharedptr > > >, boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > > >::valuetype’ {aka ‘boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > >’})
206 | graph[i] = outlierfactors.at(i);
| ^
In file included from /usr/include/c++/9/memory:81,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:9,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/bits/sharedptr.h:309:19: note: candidate: ‘std::sharedptr<Tp>& std::sharedptr<Tp>::operator=(const std::sharedptr<Tp>&) [with _Tp = gtsam::NonlinearFactor]’
309 | sharedptr& operator=(const sharedptr&) noexcept = default;
| ^~~~~~~~
/usr/include/c++/9/bits/sharedptr.h:309:29: note: no known conversion for argument 1 from ‘gnucxx::alloctraits > > >, boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > > >::valuetype’ {aka ‘boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > >’} to ‘const std::sharedptrgtsam::NonlinearFactor&’
309 | sharedptr& operator=(const sharedptr&) noexcept = default;
| ^~~~~~~~~~~~~~~~~
/usr/include/c++/9/bits/sharedptr.h:313:2: note: candidate: ‘template std::sharedptr<Tp>::Assignable&> std::sharedptr<Tp>::operator=(const std::sharedptr<Yp>&) [with Yp = _Yp; _Tp = gtsam::NonlinearFactor]’
313 | operator=(const sharedptr<Yp>& _r) noexcept
| ^~~~~~~~
/usr/include/c++/9/bits/sharedptr.h:313:2: note: template argument deduction/substitution failed:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:206:56: note: ‘gnu_cxx::alloctraits<std::allocator<boost::sharedptr > > >, boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > > >::valuetype’ {aka ‘boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > >’} is not derived from ‘const std::sharedptr<Tp>’
206 | graph[i] = outlierfactors.at(i);
| ^
In file included from /usr/include/c++/9/memory:81,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:9,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/bits/sharedptr.h:324:2: note: candidate: ‘template std::sharedptr<Tp>::Assignablestd::auto_ptr<_Up > std::sharedptr<Tp>::operator=(std::autoptr<Up>&&) [with Yp = _Yp; _Tp = gtsam::NonlinearFactor]’
324 | operator=(autoptr<Yp>&& _r)
| ^~~~~~~~
/usr/include/c++/9/bits/sharedptr.h:324:2: note: template argument deduction/substitution failed:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:206:56: note: ‘gnu_cxx::alloctraits<std::allocator<boost::sharedptr > > >, boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > > >::valuetype’ {aka ‘boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > >’} is not derived from ‘std::autoptr<Up>’
206 | graph[i] = outlierfactors.at(i);
| ^
In file included from /usr/include/c++/9/memory:81,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:9,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/bits/sharedptr.h:333:7: note: candidate: ‘std::sharedptr<Tp>& std::sharedptr<Tp>::operator=(std::sharedptr<Tp>&&) [with _Tp = gtsam::NonlinearFactor]’
333 | operator=(sharedptr&& r) noexcept
| ^~~~~~~~
/usr/include/c++/9/bits/shared_ptr.h:333:30: note: no known conversion for argument 1 from ‘gnucxx::alloctraits > > >, boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > > >::valuetype’ {aka ‘boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > >’} to ‘std::sharedptrgtsam::NonlinearFactor&&’
333 | operator=(sharedptr&& _r) noexcept
| ~~~~~~~~~~~~~^~~
/usr/include/c++/9/bits/sharedptr.h:341:2: note: candidate: ‘template std::sharedptr<Tp>::Assignablestd::shared_ptr<_Yp > std::sharedptr<Tp>::operator=(std::sharedptr<Yp>&&) [with Yp = _Yp; _Tp = gtsam::NonlinearFactor]’
341 | operator=(sharedptr<Yp>&& _r) noexcept
| ^~~~~~~~
/usr/include/c++/9/bits/sharedptr.h:341:2: note: template argument deduction/substitution failed:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:206:56: note: ‘gnu_cxx::alloctraits<std::allocator<boost::sharedptr > > >, boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > > >::valuetype’ {aka ‘boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > >’} is not derived from ‘std::sharedptr<Tp>’
206 | graph[i] = outlierfactors.at(i);
| ^
In file included from /usr/include/c++/9/memory:81,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:9,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/bits/sharedptr.h:349:2: note: candidate: ‘template std::sharedptr<Tp>::Assignable > std::sharedptr<Tp>::operator=(std::uniqueptr<Up, Ep>&&) [with _Yp = _Yp; _Del = _Del; _Tp = gtsam::NonlinearFactor]’
349 | operator=(uniqueptr<Yp, _Del>&& _r)
| ^~~~~~~~
/usr/include/c++/9/bits/sharedptr.h:349:2: note: template argument deduction/substitution failed:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:206:56: note: ‘gnu_cxx::alloctraits<std::allocator<boost::sharedptr > > >, boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > > >::valuetype’ {aka ‘boost::sharedptr<stellavslam::optimize::internalgtsam::PoseOptFactorBase > >’} is not derived from ‘std::uniqueptr<Tp, _Dp>’
206 | graph[i] = outlierfactors.at(i);
| ^
In file included from /usr/include/x8664-linux-gnu/c++/9/bits/c++allocator.h:33,
from /usr/include/c++/9/bits/allocator.h:46,
from /usr/include/c++/9/vector:64,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/ext/newallocator.h: In instantiation of ‘void gnucxx::newallocator<Tp>::construct(Up*, Args&& ...) [with _Up = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2>&}; Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >]’:
/usr/include/c++/9/bits/alloctraits.h:244:4: required from ‘static std::Require::constructhelper<Tp, Args>::type> std::allocatortraits<Alloc>::Sconstruct(Alloc&, Tp*, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2>&}; Alloc = Eigen::alignedallocator, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> > >; std::Require<typename std::allocatortraits<Alloc>::constructhelper<Tp, _Args>::type> = void]’
/usr/include/c++/9/bits/alloctraits.h:350:16: required from ‘static decltype (std::allocatortraits<Alloc>::Sconstruct(a, _p, (forward<Args>)(std::allocator_traits::construct::args)...)) std::allocatortraits<Alloc>::construct(Alloc&, _Tp*, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2>&}; Alloc = Eigen::alignedallocator, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> > >; decltype (std::allocatortraits<Alloc>::Sconstruct(a, _p, (forward<Args>)(std::allocator_traits::construct::args)...)) = void]’
/usr/include/c++/9/bits/sharedptrbase.h:548:39: required from ‘std::Spcountedptrinplace<Tp, _Alloc, _Lp>::Spcountedptrinplace(Alloc, Args&& ...) [with _Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2>&}; Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; Alloc = Eigen::alignedallocator, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> > >; gnucxx::Lockpolicy _Lp = _gnucxx::Satomic]’
/usr/include/c++/9/bits/sharedptr_base.h:679:16: required from ‘std::sharedcount<Lp>::sharedcount(Tp*&, std::Spallocsharedtag<Alloc>, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; Alloc = Eigen::alignedallocator, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> > >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2>&}; _gnucxx::Lockpolicy Lp = _gnucxx::Satomic]’
/usr/include/c++/9/bits/sharedptr_base.h:1344:71: required from ‘std::sharedptr<Tp, Lp>::sharedptr(std::Spallocsharedtag<Tp>, _Args&& ...) [with _Alloc = Eigen::alignedallocator, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> > >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2>&}; Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; gnucxx::Lockpolicy _Lp = _gnucxx::Satomic]’
/usr/include/c++/9/bits/sharedptr.h:359:59: required from ‘std::sharedptr<Tp>::sharedptr(std::Spallocsharedtag<Tp>, Args&& ...) [with _Alloc = Eigen::alignedallocator, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> > >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2>&}; Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >]’
/usr/include/c++/9/bits/sharedptr.h:701:14: required from ‘std::sharedptr<Tp> std::allocateshared(const Alloc&, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; Alloc = Eigen::alignedallocator, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> > >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2>&}]’
/usr/include/gtsam/inference/FactorGraph.h:194:59: required from ‘gtsam::FactorGraph::IsDerived gtsam::FactorGraph::emplaceshared(Args&& ...) [with DERIVEDFACTOR = stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCameragtsam::Cal3_S2 >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptrgtsam::Cal3_S2&}; FACTOR = gtsam::NonlinearFactor; gtsam::FactorGraph::IsDerived = void]’
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:111:130: required from here
/usr/include/c++/9/ext/newallocator.h:146:4: error: invalid new-expression of abstract class type ‘stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> >’
146 | { ::new((void *)p) Up(std::forward<Args>(args)...); }
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:288:7: note: because the following virtual functions are pure within ‘stellavslam::optimize::internalgtsam::PoseOptFactor, gtsam::Cal3S2, stellavslam::optimize::internalgtsam::PinholeCamera<gtsam::Cal3S2> >’:
288 | class PoseOptFactor : public PoseOptFactorBase {
| ^~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/nonlinear/NonlinearFactor.h:642:18: note: ‘gtsam::Vector gtsam::NoiseModelFactorN::evaluateError(const ValueTypes& ..., gtsam::NoiseModelFactorN::OptionalMatrixTypeT...) const [with ValueTypes = {gtsam::Pose3}; gtsam::Vector = Eigen::Matrix]’
642 | virtual Vector evaluateError(const ValueTypes&... x,
| ^~~~~~~~~~~~~
In file included from /usr/include/x8664-linux-gnu/c++/9/bits/c++allocator.h:33,
from /usr/include/c++/9/bits/allocator.h:46,
from /usr/include/c++/9/vector:64,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/ext/newallocator.h: In instantiation of ‘void _gnucxx::newallocator<Tp>::construct(Up*, _Args&& ...) [with _Up = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >; _Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, boost::sharedptr<stellavslam::optimize::internalgtsam::SphericalCameraCalibration>&}; _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >]’:
/usr/include/c++/9/bits/alloctraits.h:244:4: required from ‘static std::Require<typename std::allocatortraits<_Alloc>::constructhelper<Tp, Args>::type> std::allocatortraits<Alloc>::Sconstruct(Alloc&, Tp*, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >; _Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, boost::sharedptr<stellavslam::optimize::internalgtsam::SphericalCameraCalibration>&}; _Alloc = Eigen::alignedallocator, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera > >; std::Require<typename std::allocatortraits<Alloc>::constructhelper<Tp, _Args>::type> = void]’
/usr/include/c++/9/bits/alloctraits.h:350:16: required from ‘static decltype (std::allocatortraits<Alloc>::Sconstruct(a, _p, (forward<Args>)(std::allocator_traits::construct::args)...)) std::allocatortraits<Alloc>::construct(Alloc&, _Tp*, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >; _Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, boost::sharedptr<stellavslam::optimize::internalgtsam::SphericalCameraCalibration>&}; _Alloc = Eigen::alignedallocator, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera > >; decltype (std::allocatortraits<Alloc>::Sconstruct(a, _p, (forward<Args>)(std::allocator_traits::construct::args)...)) = void]’
/usr/include/c++/9/bits/sharedptrbase.h:548:39: required from ‘std::Spcountedptrinplace<Tp, _Alloc, _Lp>::Spcountedptrinplace(Alloc, Args&& ...) [with _Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, boost::sharedptr<stellavslam::optimize::internalgtsam::SphericalCameraCalibration>&}; _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >; _Alloc = Eigen::alignedallocator, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera > >; gnucxx::Lockpolicy _Lp = _gnucxx::Satomic]’
/usr/include/c++/9/bits/sharedptr_base.h:679:16: required from ‘std::sharedcount<Lp>::sharedcount(Tp*&, std::Spallocsharedtag<Alloc>, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >; _Alloc = Eigen::alignedallocator, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera > >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, boost::sharedptr<stellavslam::optimize::internalgtsam::SphericalCameraCalibration>&}; _gnucxx::Lockpolicy _Lp = _gnucxx::Satomic]’
/usr/include/c++/9/bits/sharedptr_base.h:1344:71: required from ‘std::sharedptr<Tp, Lp>::sharedptr(std::Spallocsharedtag<Tp>, _Args&& ...) [with _Alloc = Eigen::alignedallocator, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera > >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, boost::sharedptr<stellavslam::optimize::internalgtsam::SphericalCameraCalibration>&}; _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >; _gnucxx::Lockpolicy _Lp = _gnucxx::Satomic]’
/usr/include/c++/9/bits/sharedptr.h:359:59: required from ‘std::sharedptr<Tp>::sharedptr(std::Spallocsharedtag<Tp>, Args&& ...) [with _Alloc = Eigen::alignedallocator, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera > >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, boost::sharedptr<stellavslam::optimize::internalgtsam::SphericalCameraCalibration>&}; _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >]’
/usr/include/c++/9/bits/sharedptr.h:701:14: required from ‘std::sharedptr<Tp> std::allocateshared(const _Alloc&, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration> >; _Alloc = Eigen::alignedallocator, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera > >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, boost::sharedptr<stellavslam::optimize::internalgtsam::SphericalCameraCalibration>&}]’
/usr/include/gtsam/inference/FactorGraph.h:194:59: required from ‘gtsam::FactorGraph::IsDerived gtsam::FactorGraph::emplaceshared(Args&& ...) [with DERIVEDFACTOR = stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera >; Args = {Eigen::Matrix, unsigned int&, Eigen::Matrix&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, boost::sharedptr&}; FACTOR = gtsam::NonlinearFactor; gtsam::FactorGraph::IsDerived = void]’
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:121:130: required from here
/usr/include/c++/9/ext/newallocator.h:146:4: error: invalid new-expression of abstract class type ‘stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera >’
146 | { ::new((void )p) Up(std::forward<Args>(args)...); }
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:288:7: note: because the following virtual functions are pure within ‘stellavslam::optimize::internalgtsam::PoseOptFactor, stellavslam::optimize::internalgtsam::SphericalCameraCalibration, stellavslam::optimize::internalgtsam::SphericalCamera >’:
288 | class PoseOptFactor : public PoseOptFactorBase {
| ^~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/nonlinear/NonlinearFactor.h:642:18: note: ‘gtsam::Vector gtsam::NoiseModelFactorN::evaluateError(const ValueTypes& ..., gtsam::NoiseModelFactorN::OptionalMatrixTypeT...) const [with ValueTypes = {gtsam::Pose3}; gtsam::Vector = Eigen::Matrix]’
642 | virtual Vector evaluateError(const ValueTypes&... x,
| ^~~~~~~~~~~~~
In file included from /usr/include/x8664-linux-gnu/c++/9/bits/c++allocator.h:33,
from /usr/include/c++/9/bits/allocator.h:46,
from /usr/include/c++/9/vector:64,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/type.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/base.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/camera/equirectangular.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:1:
/usr/include/c++/9/ext/newallocator.h: In instantiation of ‘void _gnucxx::newallocator<Tp>::construct(_Up, Args&& ...) [with _Up = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; Args = {Eigen::Matrix, unsigned int&, gtsam::StereoPoint2&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2Stereo>&}; Tp = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>]’:
/usr/include/c++/9/bits/alloctraits.h:244:4: required from ‘static std::Require::constructhelper<Tp, Args>::type> std::allocatortraits<Alloc>::Sconstruct(Alloc&, Tp*, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; Args = {Eigen::Matrix, unsigned int&, gtsam::StereoPoint2&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2Stereo>&}; Alloc = Eigen::alignedallocator, gtsam::Cal3S2Stereo, gtsam::StereoCamera> >; std::Require::constructhelper<Tp, Args>::type> = void]’
/usr/include/c++/9/bits/alloctraits.h:350:16: required from ‘static decltype (std::allocatortraits<Alloc>::Sconstruct(a, _p, (forward<Args>)(std::allocator_traits::construct::args)...)) std::allocatortraits<Alloc>::construct(Alloc&, _Tp*, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; Args = {Eigen::Matrix, unsigned int&, gtsam::StereoPoint2&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2Stereo>&}; Alloc = Eigen::alignedallocator, gtsam::Cal3S2Stereo, gtsam::StereoCamera> >; decltype (std::allocatortraits<Alloc>::Sconstruct(a, _p, (forward<Args>)(std::allocatortraits::construct::args)...)) = void]’
/usr/include/c++/9/bits/sharedptrbase.h:548:39: required from ‘std::Spcountedptrinplace<Tp, _Alloc, _Lp>::Spcountedptrinplace(Alloc, Args&& ...) [with _Args = {Eigen::Matrix, unsigned int&, gtsam::StereoPoint2&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2Stereo>&}; Tp = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; Alloc = Eigen::alignedallocator, gtsam::Cal3S2Stereo, gtsam::StereoCamera> >; _gnucxx::Lockpolicy _Lp = _gnucxx::Satomic]’
/usr/include/c++/9/bits/sharedptr_base.h:679:16: required from ‘std::sharedcount<Lp>::sharedcount(Tp*&, std::Spallocsharedtag<Alloc>, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; Alloc = Eigen::alignedallocator, gtsam::Cal3S2Stereo, gtsam::StereoCamera> >; _Args = {Eigen::Matrix, unsigned int&, gtsam::StereoPoint2&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2Stereo>&}; _gnucxx::Lockpolicy Lp = _gnucxx::Satomic]’
/usr/include/c++/9/bits/sharedptr_base.h:1344:71: required from ‘std::sharedptr<Tp, Lp>::sharedptr(std::Spallocsharedtag<Tp>, _Args&& ...) [with _Alloc = Eigen::alignedallocator, gtsam::Cal3S2Stereo, gtsam::StereoCamera> >; _Args = {Eigen::Matrix, unsigned int&, gtsam::StereoPoint2&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2Stereo>&}; Tp = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; gnucxx::Lockpolicy _Lp = _gnucxx::Satomic]’
/usr/include/c++/9/bits/sharedptr.h:359:59: required from ‘std::sharedptr<Tp>::sharedptr(std::Spallocsharedtag<Tp>, Args&& ...) [with _Alloc = Eigen::alignedallocator, gtsam::Cal3S2Stereo, gtsam::StereoCamera> >; _Args = {Eigen::Matrix, unsigned int&, gtsam::StereoPoint2&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2Stereo>&}; Tp = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>]’
/usr/include/c++/9/bits/sharedptr.h:701:14: required from ‘std::sharedptr<Tp> std::allocateshared(const Alloc&, _Args&& ...) [with _Tp = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; Alloc = Eigen::alignedallocator, gtsam::Cal3S2Stereo, gtsam::StereoCamera> >; _Args = {Eigen::Matrix, unsigned int&, gtsam::StereoPoint2&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptr<gtsam::Cal3S2Stereo>&}]’
/usr/include/gtsam/inference/FactorGraph.h:194:59: required from ‘gtsam::FactorGraph::IsDerived gtsam::FactorGraph::emplaceshared(Args&& ...) [with DERIVEDFACTOR = stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>; Args = {Eigen::Matrix, unsigned int&, gtsam::StereoPoint2&, std::sharedptrgtsam::noiseModel::Robust&, gtsam::Symbol, std::sharedptrgtsam::Cal3_S2Stereo&}; FACTOR = gtsam::NonlinearFactor; gtsam::FactorGraph::IsDerived = void]’
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:142:127: required from here
/usr/include/c++/9/ext/newallocator.h:146:4: error: invalid new-expression of abstract class type ‘stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3_S2Stereo, gtsam::StereoCamera>’
146 | { ::new((void *)p) Up(std::forward<Args>(_args)...); }
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:337:7: note: because the following virtual functions are pure within ‘stellavslam::optimize::internalgtsam::StereoPoseOptFactor, gtsam::Cal3S2Stereo, gtsam::StereoCamera>’:
337 | class StereoPoseOptFactor : public PoseOptFactorBase {
| ^~~~~~~~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:4,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/nonlinear/NonlinearFactor.h:642:18: note: ‘gtsam::Vector gtsam::NoiseModelFactorN::evaluateError(const ValueTypes& ..., gtsam::NoiseModelFactorN::OptionalMatrixTypeT...) const [with ValueTypes = {gtsam::Pose3}; gtsam::Vector = Eigen::Matrix]’
642 | virtual Vector evaluateError(const ValueTypes&... x,
| ^~~~~~~~~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h: In instantiation of ‘gtsam::Vector stellavslam::optimize::internalgtsam::StereoPoseOptFactor::project(const gtsam::Pose3&) const [with POSE = gtsam::Pose3; LANDMARK = Eigen::Matrix; CALIBRATION = gtsam::Cal3S2Stereo; STEREOCAMERA = gtsam::StereoCamera; gtsam::Vector = Eigen::Matrix]’:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:377:19: required from here
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:378:23: error: no matching function for call to ‘gtsam::StereoCamera::StereoCamera(const gtsam::Pose3&, const boost::sharedptr<gtsam::Cal3S2Stereo>&)’
378 | STEREOCAMERA camera(pose, calibration);
| ^~~~~~
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:7,
from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/usr/include/gtsam/geometry/StereoCamera.h:77:3: note: candidate: ‘gtsam::StereoCamera::StereoCamera(const gtsam::Pose3&, gtsam::Cal3S2Stereo::sharedptr)’
77 | StereoCamera(const Pose3& leftCamPose, const Cal3S2Stereo::sharedptr K);
| ^~~~~~~~~~~~
/usr/include/gtsam/geometry/StereoCamera.h:77:74: note: no known conversion for argument 2 from ‘const boost::sharedptr<gtsam::Cal3S2Stereo>’ to ‘gtsam::Cal3S2Stereo::sharedptr’ {aka ‘std::sharedptr<gtsam::Cal3S2Stereo>’}
77 | StereoCamera(const Pose3& leftCamPose, const Cal3S2Stereo::sharedptr K);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
/usr/include/gtsam/geometry/StereoCamera.h:72:3: note: candidate: ‘gtsam::StereoCamera::StereoCamera()’
72 | StereoCamera() :
| ^~~~~~~~~~~~
/usr/include/gtsam/geometry/StereoCamera.h:72:3: note: candidate expects 0 arguments, 2 provided
/usr/include/gtsam/geometry/StereoCamera.h:47:20: note: candidate: ‘gtsam::StereoCamera::StereoCamera(const gtsam::StereoCamera&)’
47 | class GTSAMEXPORT StereoCamera {
| ^~~~~~~~~~~~
/usr/include/gtsam/geometry/StereoCamera.h:47:20: note: candidate expects 1 argument, 2 provided
/usr/include/gtsam/geometry/StereoCamera.h:47:20: note: candidate: ‘gtsam::StereoCamera::StereoCamera(gtsam::StereoCamera&&)’
/usr/include/gtsam/geometry/StereoCamera.h:47:20: note: candidate expects 1 argument, 2 provided
In file included from /home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/poseoptimizergtsam.cc:7:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h: In instantiation of ‘gtsam::Vector stellavslam::optimize::internalgtsam::PoseOptFactor::project(const gtsam::Pose3&) const [with POSE = gtsam::Pose3; LANDMARK = Eigen::Matrix; CALIBRATION = stellavslam::optimize::internalgtsam::SphericalCameraCalibration; CAMERA = stellavslam::optimize::internalgtsam::SphericalCamera<stellavslam::optimize::internalgtsam::SphericalCameraCalibration>; gtsam::Vector = Eigen::Matrix]’:
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:328:19: required from here
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:116:100: error: could not convert ‘boost::none’ from ‘const boost::nonet’ to ‘gtsam::OptionalJacobian<2, 6>’
116 | gtsam::Point2 project(const gtsam::Point3& point, gtsam::OptionalJacobian<2, 6> Dpose = boost::none, gtsam::OptionalJacobian<2, 3> Dpoint = boost::none) const {
| ~~~~~~~^~~~
| |
| const boost::nonet
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:330:43: note: when instantiating default argument for call to ‘gtsam::Point2 stellavslam::optimize::internalgtsam::SphericalCamera::project(const Point3&, gtsam::OptionalJacobian<2, 6>, gtsam::OptionalJacobian<2, 3>) const [with CALIBRATION = stellavslam::optimize::internalgtsam::SphericalCameraCalibration; gtsam::Point2 = Eigen::Matrix; gtsam::Point3 = Eigen::Matrix]’
330 | return camera.project(this->point);
| ^
/home/mariah/tellows/src/stellavslam/src/stellavslam/optimize/internalgtsam/projectionfactor.h:330:43: error: could not convert ‘boost::none’ from ‘const boost::nonet’ to ‘gtsam::OptionalJacobian<2, 6>’
make[2]: *** [src/stellavslam/CMakeFiles/stellavslam.dir/build.make:752: src/stellavslam/CMakeFiles/stellavslam.dir/optimize/poseoptimizergtsam.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:516: src/stellavslam/CMakeFiles/stella_vslam.dir/all] Error 2
make: *** [Makefile:130: all] Error 2
Asked by mgrallos on 2023-02-05 22:39:42 UTC
Comments