gtrll / gpmp2

Gaussian Process Motion Planner 2
Other
315 stars 98 forks source link

Cmake fail #30

Closed Juzhan closed 5 years ago

Juzhan commented 5 years ago

Hi, I followed the guidance to install gpmp2, I already installed GTSAM (the branch I installed from source is 4.0.0-alpha1), and my OS is ubuntu 14.0.4, but when I run make check or sudo make install, it can't work for me, here is a part of the cmake error message:

/home/zhan/env/GPMP/gpmp2/gpmp2/planner/BatchTrajOptimizer.cpp:75:84:   required from here
/home/zhan/env/GPMP/gpmp2/gpmp2/geometry/ProductDynamicLieGroup.h:116:77: error: no matching function for call to ‘gtsam::traits<gpmp2::DynamicVector>::Compose(const gpmp2::DynamicVector&, const gpmp2::DynamicVector&, gpmp2::ProductDynamicLieGroup<gtsam::Pose2, gpmp2::DynamicVector>::Jacobian2&)’
       H h = gtsam::traits<H>::Compose(this->second, other.second, D_h_second);
                                                                             ^
/home/zhan/env/GPMP/gpmp2/gpmp2/geometry/ProductDynamicLieGroup.h:116:77: note: candidates are:
In file included from /usr/local/include/gtsam/geometry/Point3.h:25:0,
                 from /usr/local/include/gtsam/geometry/Pose3.h:23,
                 from /home/zhan/env/GPMP/gpmp2/gpmp2/kinematics/ForwardKinematics.h:10,
                 from /home/zhan/env/GPMP/gpmp2/gpmp2/kinematics/Arm.h:10,
                 from /home/zhan/env/GPMP/gpmp2/gpmp2/kinematics/ArmModel.h:10,
                 from /home/zhan/env/GPMP/gpmp2/gpmp2/planner/BatchTrajOptimizer.h:11,
                 from /home/zhan/env/GPMP/gpmp2/gpmp2/planner/BatchTrajOptimizer.cpp:8:
/usr/local/include/gtsam/base/VectorSpace.h:92:16: note: static Class gtsam::internal::VectorSpaceImpl<Class, -1>::Compose(const Class&, const Class&) [with Class = gpmp2::DynamicVector]
   static Class Compose(const Class& v1, const Class& v2) { return v1+v2;}
                ^
/usr/local/include/gtsam/base/VectorSpace.h:92:16: note:   candidate expects 2 arguments, 3 provided
/usr/local/include/gtsam/base/VectorSpace.h:140:16: note: static Class gtsam::internal::VectorSpaceImpl<Class, -1>::Compose(const Class&, const Class&, gtsam::internal::VectorSpaceImpl<Class, -1>::ChartJacobian, gtsam::internal::VectorSpaceImpl<Class, -1>::ChartJacobian) [with Class = gpmp2::DynamicVector; gtsam::internal::VectorSpaceImpl<Class, -1>::ChartJacobian = gtsam::OptionalJacobian<-1, -1>]
   static Class Compose(const Class& v1, const Class& v2, ChartJacobian H1,
                ^
/usr/local/include/gtsam/base/VectorSpace.h:140:16: note:   candidate expects 4 arguments, 3 provided

Then I found that there was some error which made me confuse, like the following error:

/usr/local/include/gtsam/base/VectorSpace.h:92:16: note: candidate expects 2 arguments, 3 provided

I wonder whether I installed the wrong version of GTSM? And how can I fix the problem? Thanks! (^_^)

By the way, can you tell me how to use the gpmp2 with ROS to plan the trajectory of a robot arm, just like OMPL?

Juzhan commented 5 years ago

Well, I did install the wrong version of GTSM, I reinstalled the GTSAM from the source in which the branch is 4.0.0-alpha2, then the gpmp2 installed successfully:+1: .