Ask Your Question
0

rgbdslam with electric install

asked 2012-07-27 05:52:43 -0500

pig's head gravatar image

updated 2014-01-28 17:13:10 -0500

ngrennan gravatar image

I have used ROS fuerte and find it's too hard to make rgbdslam,so I use ROS electric now. I follow the tutorial(http://www.ros.org/wiki/rgbdslam),and I use Ubuntu 11.10 OS. From my first time to rosmake --rosdep-install rgbdslam,all package have compiled :

,but when start linking ,there are many error to remind me cannot find *.so file

Linking CXX executable ../bin/rgbdslam
/usr/bin/ld: cannot find -lg2o_stuff/usr/lib/i386-linux-gnu/libQtOpenGL.so

so,I modify rgbdslam/CMakeFile.txt ,and set libs,finally CMakeFile.txt turn into this : (line 177)

SET(LIBS_LINK rgbdslam GL GLU g2o_types_slam3d g2o_solver_cholmod g2o_solver_pcg g2o_solver_csparse g2o_core cxsparse g2o_stuff QtOpenGL ${QT_LIBRARIES} ${QT_QTOPENGL_LIBRARY} ${GLUT_LIBRARY} ${OPENGL_LIBRARY} ${OpenCV_LIBS})

meanwhile I download a libQtOpenGL.so file,and put it into /lib/i386-linux-gnu/ but now,Error are different:

Linking CXX executable ../bin/rgbdslam
CMakeFiles/rgbdslam.dir/src/graph_manager.o: In function `LinearSolverCholmod':
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:75: undefined reference to `cholmod_start'
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:75: undefined reference to `cholmod_start'
CMakeFiles/rgbdslam.dir/src/graph_manager.o: In function `g2o::LinearSolverCholmod<Eigen::Matrix<double, 6, 6, 0, 6, 6> >::init()':
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:98: undefined reference to `cholmod_free_factor'
CMakeFiles/rgbdslam.dir/src/graph_manager.o: In function `~LinearSolverCholmod':
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:89: undefined reference to `cholmod_free_factor'
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:92: undefined reference to `cholmod_finish'
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:89: undefined reference to `cholmod_free_factor'
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:92: undefined reference to `cholmod_finish'
CMakeFiles/rgbdslam.dir/src/graph_manager.o: In function `g2o::LinearSolverCholmod<Eigen::Matrix<double, 6, 6, 0, 6, 6> >::computeSymbolicDecomposition(g2o::SparseBlockMatrix<Eigen::Matrix<double, 6, 6, 0, 6, 6> > const&)':
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:252: undefined reference to `cholmod_analyze'
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:278: undefined reference to `cholmod_amd'
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:301: undefined reference to `cholmod_analyze_p'
CMakeFiles/rgbdslam.dir/src/graph_manager.o: In function `g2o::LinearSolverCholmod<Eigen::Matrix<double, 6, 6, 0, 6, 6> >::solvePattern(g2o::SparseBlockMatrix<Eigen::Matrix<double, -1, -1, 0, -1, -1> >&, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > const&, g2o::SparseBlockMatrix<Eigen::Matrix<double, 6, 6, 0, 6, 6> > const&)':
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:202: undefined reference to `cholmod_factorize'
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:207: undefined reference to `cholmod_change_factor'
CMakeFiles/rgbdslam.dir/src/graph_manager.o: In function `g2o::LinearSolverCholmod<Eigen::Matrix<double, 6, 6, 0, 6, 6> >::solve(g2o::SparseBlockMatrix<Eigen::Matrix<double, 6, 6, 0, 6, 6> > const&, double*, double*)':
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:123: undefined reference to `cholmod_factorize'
/home/zhutou/ros/g2o/include/g2o/solvers/cholmod/linear_solver_cholmod.h:130: undefined reference to `cholmod_solve ...
(more)
edit retag flag offensive close merge delete

Comments

Hi ,@allenh1,I have built all package include g2o

pig's head gravatar image pig's head  ( 2012-07-27 18:30:11 -0500 )edit

3 Answers

Sort by » oldest newest most voted
0

answered 2012-07-29 22:23:35 -0500

Sudhan gravatar image

updated 2012-07-29 22:30:29 -0500

I too had some similar problem. Don't edit anything in cmakelist.txt. Try

$ rosmake --pre-clean rgbdslam.

If it is not working. Tell me what you have done to solve the dependency problem of eigen package for rgbdslam. this might also be a problem.

edit flag offensive delete link more
0

answered 2012-08-01 03:45:11 -0500

Absy gravatar image

I had some issues to install Ros Electric with all the dependancies needed; I finally succeeded by installing this linux distribution which have already the full ros electric installed: http://openqbo.org/wiki/doku.php?id=download After that, I followed the tutorial and it finally worked.
Good luck to you !

edit flag offensive delete link more
0

answered 2012-07-27 06:11:49 -0500

allenh1 gravatar image

updated 2012-07-27 06:12:48 -0500

Make sure you have installed g2o:

svn co https://code.ros.org/svn/ros-pkg/stacks/vslam/trunk/g2o ~/ros/g2o

This is a necessary dependency for it. It appears you have it, but did you build it?

rosmake g2o
edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

Stats

Asked: 2012-07-27 05:52:43 -0500

Seen: 646 times

Last updated: Aug 01 '12