gaoxiang12 / ORBSLAM2_with_pointcloud_map

830 stars 346 forks source link

error building g2o_with_orbslam2: ‘MatrixExponential’ is not a member of ‘Eigen’ #29

Open oofrivia opened 6 years ago

oofrivia commented 6 years ago

I was building the g2o_with_orbslam2 fallow the install step. meet error:

[ 78%] Linking CXX executable ../../../../bin/static_target [ 78%] Built target static_target Scanning dependencies of target constant_velocity_target [ 78%] Building CXX object g2o/examples/target/CMakeFiles/constant_velocity_target.dir/constant_velocity_target.cpp.o In file included from /home/he/SLAM2_with_pointcloud_map-master/g2o_with_orbslam2/g2o/examples/target/constant_velocity_target.cpp:18:0: /home/he/SLAM2_with_pointcloud_map-master/g2o_with_orbslam2/g2o/examples/target/continuous_to_discrete.h: In function ‘void continuousToDiscrete(MatrixType&, MatrixType&, const MatrixType&, const MatrixType&, double)’: /home/he/SLAM2_with_pointcloud_map-master/g2o_with_orbslam2/g2o/examples/target/continuous_to_discrete.h:29:3: error: ‘MatrixExponential’ is not a member of ‘Eigen’ Eigen::MatrixExponential me(bigA); ^ /home/he/SLAM2_with_pointcloud_map-master/g2o_with_orbslam2/g2o/examples/target/continuous_to_discrete.h:29:49: error: expected primary-expression before ‘>’ token Eigen::MatrixExponential me(bigA); ^ /home/he/SLAM2_with_pointcloud_map-master/g2o_with_orbslam2/g2o/examples/target/continuous_to_discrete.h:30:3: error: ‘me’ was not declared in this scope me.compute(bigB); ^ g2o/examples/target/CMakeFiles/constant_velocity_target.dir/build.make:62: recipe for target 'g2o/examples/target/CMakeFiles/constant_velocity_target.dir/constant_velocity_target.cpp.o' failed make[2]: [g2o/examples/target/CMakeFiles/constant_velocity_target.dir/constant_velocity_target.cpp.o] Error 1 CMakeFiles/Makefile2:2268: recipe for target 'g2o/examples/target/CMakeFiles/constant_velocity_target.dir/all' failed make[1]: [g2o/examples/target/CMakeFiles/constant_velocity_target.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: *** [all] Error 2

i installed eigen3 3.2.92, don't know how to fix this , thanks

oofrivia commented 6 years ago

install another version of eigen will solve this problem.

http://eigen.tuxfamily.org/index.php?title=News:Eigen_3.2.10_released!

adaxidedakaonang commented 3 years ago

Did you solved this problem?

withnoerr commented 3 months ago

// bigB = expm(bigA) //Eigen::MatrixExponential me(bigA); //me.compute(bigB); bigB = bigA.exp(); 前三行代码注释掉,添加最后一行