Closed canglan1024 closed 6 years ago
Finally I made it by removing installed g2o and then making a fresh install through install.sh
You can remove everything of g2o by
sudo rm -rf /usr/local/include/g2o cd /usr/local/lib sudo rm -rf libg2o_*.so libg2o_*.so libg2o_*.so
I have tried install.sh and catkin_make and both end up with the same error.
`In file included from /usr/include/c++/5/unordered_map:35:0, from /usr/local/include/g2o/core/hyper_graph.h:38, from /usr/local/include/g2o/core/optimizable_graph.h:38, from /usr/local/include/g2o/core/sparse_optimizer.h:32, from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/graph_manager.h:58, from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/openni_listener.h:31, from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/moc_openni_listener.cpp:9: /usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
error This file requires compiler and library support \
^ In file included from /usr/local/include/g2o/core/optimizable_graph.h:38:0, from /usr/local/include/g2o/core/sparse_optimizer.h:32, from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/graph_manager.h:58, from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/openni_listener.h:31, from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/moc_openni_listener.cpp:9: /usr/local/include/g2o/core/hyper_graph.h:138:20: error: ‘unordered_map’ in namespace ‘std’ does not name a template type typedef std::unordered_map<int, Vertex> VertexIDMap; ^ /usr/local/include/g2o/core/hyper_graph.h:225:13: error: ‘VertexIDMap’ does not name a type const VertexIDMap& vertices() const {return _vertices;} ^ /usr/local/include/g2o/core/hyper_graph.h:227:7: error: ‘VertexIDMap’ does not name a type VertexIDMap& vertices() {return _vertices;} ^ /usr/local/include/g2o/core/hyper_graph.h:274:7: error: ‘VertexIDMap’ does not name a type VertexIDMap _vertices; ^ In file included from /usr/local/include/g2o/core/sparse_block_matrix.h:38:0, from /usr/local/include/g2o/core/sparse_optimizer.h:33, from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/graph_manager.h:58, from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/openni_listener.h:31, from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/moc_openni_listener.cpp:9: /usr/local/include/g2o/core/sparse_block_matrix_ccs.h:222:20: error: ‘unordered_map’ in namespace ‘std’ does not name a template type typedef std::unordered_map<int, MatrixType> SparseColumn; ^ /usr/local/include/g2o/core/sparse_block_matrix_ccs.h:241:25: error: ‘SparseColumn’ was not declared in this scope const std::vector& blockCols() const { return _blockCols;}
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:241:37: error: template argument 1 is invalid
const std::vector& blockCols() const { return _blockCols;}
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:241:37: error: template argument 2 is invalid
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:242:19: error: ‘SparseColumn’ was not declared in this scope
std::vector& blockCols() { return _blockCols;}
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:242:31: error: template argument 1 is invalid
std::vector& blockCols() { return _blockCols;}
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:242:31: error: template argument 2 is invalid
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:273:19: error: ‘SparseColumn’ was not declared in this scope
std::vector _blockCols; ///< the matrices stored in CCS
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:273:31: error: template argument 1 is invalid
std::vector _blockCols; ///< the matrices stored in CCS
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:273:31: error: template argument 2 is invalid
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h: In member function ‘MatrixType* g2o::SparseBlockMatrixHashMap::addBlock(int, int, bool)’:
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:256:9: error: ‘SparseColumn’ was not declared in this scope
SparseColumn& sparseColumn = _blockCols[c];
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:256:23: error: ‘sparseColumn’ was not declared in this scope
SparseColumn& sparseColumn = _blockCols[c];
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:256:50: error: invalid types ‘int[int]’ for array subscript
SparseColumn& sparseColumn = _blockCols[c];
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:257:18: error: ‘SparseColumn’ is not a class or namespace
typename SparseColumn::iterator foundIt = sparseColumn.find(r);
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:257:41: error: expected ‘(’ before ‘foundIt’
typename SparseColumn::iterator foundIt = sparseColumn.find(r);
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:258:13: error: ‘foundIt’ was not declared in this scope
if (foundIt == sparseColumn.end()) {
^
/usr/local/include/g2o/core/sparse_block_matrix_ccs.h:267:16: error: ‘foundIt’ was not declared in this scope
return foundIt->second;
^
In file included from /usr/local/include/g2o/core/robust_kernel_impl.h:30:0,
from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/graph_manager.h:65,
from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/openni_listener.h:31,
from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/moc_openni_listener.cpp:9:
/usr/local/include/g2o/core/robust_kernel.h: At global scope:
/usr/local/include/g2o/core/robust_kernel.h:74:16: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
typedef std::shared_ptr RobustKernelPtr;
^
In file included from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/graph_manager.h:65:0,
from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/../../../src/rgbdslam_v2-kinetic/src/openni_listener.h:31,
from /home/canglan/catkin_ws/build/rgbdslam_v2-kinetic/src/moc_openni_listener.cpp:9:
/usr/local/include/g2o/core/robust_kernel_impl.h:49:45: error: ‘RobustKernelPtr’ does not name a type
explicit RobustKernelScaleDelta(const RobustKernelPtr& kernel, double del
^
/usr/local/include/g2o/core/robust_kernel_impl.h:53:13: error: ‘RobustKernelPtr’ does not name a type
const RobustKernelPtr kernel() const { return _kernel;}
^
/usr/local/include/g2o/core/robust_kernel_impl.h:55:28: error: ‘RobustKernelPtr’ does not name a type
void setKernel(const RobustKernelPtr& ptr);
^
/usr/local/include/g2o/core/robust_kernel_impl.h:60:7: error: ‘RobustKernelPtr’ does not name a type
RobustKernelPtr _kernel;
^
rgbdslam_v2-kinetic/CMakeFiles/rgbdslam.dir/build.make:110: recipe for target 'rgbdslam_v2-kinetic/CMakeFiles/rgbdslam.dir/src/moc_openni_listener.cpp.o' failed
make[2]: [rgbdslam_v2-kinetic/CMakeFiles/rgbdslam.dir/src/moc_openni_listener.cpp.o] Error 1
CMakeFiles/Makefile2:3038: recipe for target 'rgbdslam_v2-kinetic/CMakeFiles/rgbdslam.dir/all' failed
make[1]: [rgbdslam_v2-kinetic/CMakeFiles/rgbdslam.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j1" failed
`
Is that a compiler error or I missed some dependencies?