gtrll / gpmp2

Gaussian Process Motion Planner 2
Other
310 stars 97 forks source link

The "kinematics" part couldn't find the boost on Ubuntu 20.04 #67

Closed CodingCatMountain closed 1 year ago

CodingCatMountain commented 1 year ago

Hello, developer! I wanna to install GPMP2. My platform is Ubuntu20.04, My boost version is 1.71.0. My GTSAM version is 4.1.1. When I try to install GPMP2, I meet the error in following: home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics.h:58:50: error: ‘boost’ has not been declared 58 | virtual void forwardKinematics(const Pose& jp, boost::optional<const Velocity&> jv, | ^~~~~ /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics.h:58:65: error: expected ‘,’ or ‘...’ before ‘<’ token 58 | virtual void forwardKinematics(const Pose& jp, boost::optional<const Velocity&> jv, | ^ In file included from /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics.h:83, from /home/wjj/gpmp2/gpmp2/kinematics/Arm.h:10, from /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:8: /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics-inl.h: In member function ‘gtsam::Matrix gpmp2::ForwardKinematics<POSE, VELOCITY>::forwardKinematicsPose(const Pose&) const’: /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics-inl.h:18:25: error: ‘boost’ has not been declared 18 | forwardKinematics(jp, boost::none, jpx, boost::none); | ^~~~~ /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics-inl.h:18:43: error: ‘boost’ has not been declared 18 | forwardKinematics(jp, boost::none, jpx, boost::none); | ^~~~~ /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics-inl.h:25:30: error: ‘const Point3’ {aka ‘const class Eigen::Matrix<double, 3, 1>’} has no member named ‘vector’ 25 | jpx[i].translation().vector()).finished(); | ^~~~~~ /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics-inl.h: In member function ‘gtsam::Matrix gpmp2::ForwardKinematics<POSE, VELOCITY>::forwardKinematicsPosition(const Pose&) const’: /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics-inl.h:34:25: error: ‘boost’ has not been declared 34 | forwardKinematics(jp, boost::none, jpx, boost::none); | ^~~~~ /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics-inl.h:34:43: error: ‘boost’ has not been declared 34 | forwardKinematics(jp, boost::none, jpx, boost::none); | ^~~~~ /home/wjj/gpmp2/gpmp2/kinematics/ForwardKinematics-inl.h:39:43: error: ‘const Point3’ {aka ‘const class Eigen::Matrix<double, 3, 1>’} has no member named ‘vector’ 39 | jpx_mat.col(i) = jpx[i].translation().vector(); | ^~~~~~ In file included from /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:8: /home/wjj/gpmp2/gpmp2/kinematics/Arm.h: At global scope: /home/wjj/gpmp2/gpmp2/kinematics/Arm.h:72:51: error: ‘boost’ has not been declared 72 | void forwardKinematics(const gtsam::Vector& jp, boost::optional<const gtsam::Vector&> jv, | ^~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.h:72:66: error: expected ‘,’ or ‘...’ before ‘<’ token 72 | void forwardKinematics(const gtsam::Vector& jp, boost::optional<const gtsam::Vector&> jv, | ^ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:32:23: error: ‘boost’ has not been declared 32 | const Vector& jp, boost::optional<const Vector&> jv, | ^~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:32:38: error: expected ‘,’ or ‘...’ before ‘<’ token 32 | const Vector& jp, boost::optional<const Vector&> jv, | ^ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp: In member function ‘virtual void gpmp2::Arm::forwardKinematics(const Vector&, int) const’: /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:41:3: error: ‘jpx’ was not declared in this scope; did you mean ‘jp’? 41 | jpx.resize(dof()); | ^~~ | jp /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:42:7: error: ‘jvx’ was not declared in this scope 42 | if (jvx) jvx->resize(dof()); | ^~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:43:7: error: ‘J_jpx_jp’ was not declared in this scope 43 | if (J_jpx_jp) J_jpx_jp->assign(dof(), Matrix::Zero(6, dof())); | ^~~~~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:44:7: error: ‘J_jvx_jp’ was not declared in this scope 44 | if (J_jvx_jp) J_jvx_jp->assign(dof(), Matrix::Zero(3, dof())); | ^~~~~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:45:7: error: ‘J_jvx_jv’ was not declared in this scope 45 | if (J_jvx_jv) J_jvx_jv->assign(dof(), Matrix::Zero(3, dof())); | ^~~~~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:51:7: error: ‘jv’ was not declared in this scope; did you mean ‘jn’? 51 | if (jv) J.assign(dof(), Matrix::Zero(3, dof())); | ^~ | jn /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:71:9: error: ‘jv’ was not declared in this scope; did you mean ‘jn’? 71 | if (jv) { | ^~ | jn /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:78:9: error: ‘J_jpx_jp’ was not declared in this scope 78 | if (J_jpx_jp) { | ^~~~~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:86:7: error: ‘J_jpx_jp’ was not declared in this scope 86 | if (J_jpx_jp || J_jvx_jp) | ^~~~~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:86:19: error: ‘J_jvx_jp’ was not declared in this scope 86 | if (J_jpx_jp || J_jvx_jp) | ^~~~~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:101:9: error: ‘jv’ was not declared in this scope; did you mean ‘jn’? 101 | if (jv && jvx) | ^~ | jn /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:101:15: error: ‘jvx’ was not declared in this scope 101 | if (jv && jvx) | ^~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:105:9: error: ‘J_jpx_jp’ was not declared in this scope 105 | if (J_jpx_jp) { | ^~~~~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:118:9: error: ‘J_jvx_jp’ was not declared in this scope 118 | if (J_jvx_jp) { | ^~~~~~~~ /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:135:33: error: ‘jv’ was not declared in this scope; did you mean ‘jn’? 135 | Jv.col(j) = d_Ji_qj * (*jv); | ^~ | jn /home/wjj/gpmp2/gpmp2/kinematics/Arm.cpp:140:9: error: ‘J_jvx_jv’ was not declared in this scope 140 | if (J_jvx_jv) | ^~~~~~~~ make[3]: *** [gpmp2/CMakeFiles/gpmp2.dir/build.make:90: gpmp2/CMakeFiles/gpmp2.dir/kinematics/Arm.cpp.o] Error 1 make[2]: *** [CMakeFiles/Makefile2:577: gpmp2/CMakeFiles/gpmp2.dir/all] Error 2 make[1]: *** [CMakeFiles/Makefile2:382: CMakeFiles/check.dir/rule] Error 2 make: *** [Makefile:179: check] Error 2 Could anyone give me some instructions? I will appreciate it!

CodingCatMountain commented 1 year ago

OK, It is my problem. I git and build with the newest gpmp2, gpmp2 have been installed successfully.