kzampog / cilantro

A lean C++ library for working with point cloud data
MIT License
1.01k stars 206 forks source link

make -j #49

Open shugao1 opened 4 years ago

shugao1 commented 4 years ago

git clone https://github.com/kzampog/cilantro.git cd cilantro mkdir build cd build cmake .. make -j

The following error occurs: In file included from /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:1:0: /home/gyc/桌面/3D/cilantro/include/cilantro/image_viewer.hpp: In member function ‘cilantro::ImageViewer& cilantro::ImageViewer::finishFrame()’: /home/gyc/桌面/3D/cilantro/include/cilantro/image_viewer.hpp:25:58: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ inline ImageViewer& finishFrame() { glcontext->MakeCurrent(); pangolin::FinishFrame(); return this; } ^ /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp: In member function ‘cilantro::ImageViewer& cilantro::ImageViewer::setImage(void, size_t, size_t, const string&)’: /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:16:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:17:48: error: ‘PixelFormatFromString’ is not a member of ‘pangolin’ gl_pixformat = pangolin::GlPixFormat(pangolin::PixelFormatFromString(fmt)); ^ /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp: In member function ‘cilantro::ImageViewer& cilantro::ImageViewer::setImage(const pangolin::GlTexture&)’: /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:41:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp: In member function ‘cilantro::ImageViewer& cilantro::ImageViewer::clear()’: /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:55:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp: In member function ‘cilantro::ImageViewer& cilantro::ImageViewer::clearRenderArea()’: /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:61:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp: In member function ‘cilantro::ImageViewer& cilantro::ImageViewer::render()’: /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:68:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/imageviewer.cpp: In member function ‘void cilantro::ImageViewer::init(const string&, const string&)’: /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:76:23: error: ‘FindContext’ is not a member of ‘pangolin’ glcontext = pangolin::FindContext(window_name); ^ /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:79:27: error: ‘FindContext’ is not a member of ‘pangolin’ glcontext = pangolin::FindContext(window_name); ^ /home/gyc/桌面/3D/cilantro/src/image_viewer.cpp:81:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ In file included from /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:1:0: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:25:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptr addObject(const std::string &name, const std::shared_ptr &obj_ptr) { ^ In file included from /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:1:0: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:33:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptr addObject(const std::string &name, Args&&... args) { ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:41:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptr getObject(const std::string &name) { ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:184:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptrpangolin::OpenGlRenderState gl_renderstate; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:185:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptr inputhandler; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:186:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptrpangolin::VideoOutput videorecorder; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:194:27: error: ‘shared_ptr’ is not a member of ‘std’ typedef std::pair<std::shared_ptr,std::shared_ptr> ManagedRenderable; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:194:27: error: ‘shared_ptr’ is not a member of ‘std’ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:194:53: error: wrong number of template arguments (1, should be 2) typedef std::pair<std::shared_ptr,std::shared_ptr> ManagedRenderable; ^ In file included from /usr/include/c++/5/utility:70:0, from /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:6, from /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:1: /usr/include/c++/5/bits/stl_pair.h:96:12: note: provided for ‘template<class T1, class T2> struct std::pair’ struct pair ^ In file included from /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:1:0: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:194:54: error: expected unqualified-id before ‘,’ token typedef std::pair<std::shared_ptr,std::shared_ptr> ManagedRenderable; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:196:30: error: ‘ManagedRenderable’ was not declared in this scope std::mapstd::string,ManagedRenderable renderables; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:196:47: error: template argument 2 is invalid std::mapstd::string,ManagedRenderable renderables; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:196:47: error: template argument 4 is invalid /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:42: error: invalid use of template-name ‘std::pair’ without an argument list inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:51: error: expected ‘,’ or ‘...’ before ‘<’ token inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::enablePerspectiveProjection()’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:98:13: error: ‘inputhandler’ was not declared in this scope inputhandler->EnablePerspectiveProjection(); ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::enableOrthographicProjection()’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:103:13: error: ‘inputhandler’ was not declared in this scope inputhandler->EnableOrthographicProjection(); ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::toggleProjectionMode()’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:107:53: error: ‘inputhandler’ was not declared in this scope inline Visualizer& toggleProjectionMode() { inputhandler->ToggleProjectionMode(); return this; } ^ CMakeFiles/cilantro.dir/build.make:559: recipe for target 'CMakeFiles/cilantro.dir/src/image_viewer.cpp.o' failed make[2]: [CMakeFiles/cilantro.dir/src/image_viewer.cpp.o] Error 1 make[2]: 正在等待未完成的任务.... /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘bool cilantro::Visualizer::isRecording() const’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:170:52: error: ‘videorecorder’ was not declared in this scope inline bool isRecording() const { return !!videorecorder; } ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘pangolin::OpenGlRenderState cilantro::Visualizer::getRenderState() const’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:176:77: error: ‘gl_renderstate’ was not declared in this scope inline pangolin::OpenGlRenderState getRenderState() const { return gl_renderstate.get(); } ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘cilantro::VisualizerHandler cilantro::Visualizer::getInputHandler() const’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:178:68: error: ‘inputhandler’ was not declared in this scope inline VisualizerHandler getInputHandler() const { return inputhandler.get(); } ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘bool cilantro::Visualizer::RenderPriorityComparator_::operator()(int) const’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:204:24: error: ‘o1’ was not declared in this scope return o1.first > o2.first; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:204:35: error: ‘o2’ was not declared in this scope return o1.first > o2.first; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In destructor ‘cilantro::Visualizer::~Visualizer()’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:14:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::RenderingProperties cilantro::Visualizer::getRenderingProperties(const string&) const’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:18:32: error: request for member ‘find’ in ‘((const cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘const int’ auto it = renderables.find(name); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:19:32: error: request for member ‘end’ in ‘((const cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘const int’ if (it == renderables.end()) return RenderingProperties(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setRenderingProperties(const string&, const cilantro::RenderingProperties&)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:24:32: error: request for member ‘find’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ auto it = renderables.find(name); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:25:32: error: request for member ‘end’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ if (it == renderables.end()) return this; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘bool cilantro::Visualizer::getVisibility(const string&) const’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:31:32: error: request for member ‘find’ in ‘((const cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘const int’ auto it = renderables.find(name); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:32:32: error: request for member ‘end’ in ‘((const cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘const int’ if (it == renderables.end()) return false; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setVisibility(const string&, bool)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:37:32: error: request for member ‘find’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ auto it = renderables.find(name); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:38:32: error: request for member ‘end’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ if (it == renderables.end()) return this; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::toggleVisibility(const string&)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:44:32: error: request for member ‘find’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ auto it = renderables.find(name); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:45:32: error: request for member ‘end’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ if (it == renderables.end()) return this; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::clear()’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:51:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:52:22: error: request for member ‘clear’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ renderables.clear(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::remove(const string&)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:57:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:58:22: error: request for member ‘erase’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ renderables.erase(name); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::clearRenderArea()’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:63:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:64:29: error: ‘gl_renderstate’ was not declared in this scope display_->Activate(gl_renderstate); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::render()’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:72:37: error: ‘gl_renderstate’ was not declared in this scope pangolin::OpenGlMatrix mv = gl_renderstate->GetModelViewMatrix(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:81:59: error: ‘ManagedRenderable’ was not declared in this scope std::vector<std::pair<std::tuple<bool,bool,float>,ManagedRenderable>> visible_objects; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:81:76: error: template argument 2 is invalid std::vector<std::pair<std::tuple<bool,bool,float>,ManagedRenderable>> visible_objects; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:81:77: error: template argument 1 is invalid std::vector<std::pair<std::tuple<bool,bool,float>,ManagedRenderable>> visible_objects; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:81:77: error: template argument 2 is invalid /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:82:25: error: request for member ‘reserve’ in ‘visible_objects’, which is of non-class type ‘int’ visibleobjects.reserve(renderables.size()); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:82:46: error: request for member ‘size’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables_’, which is of non-class type ‘int’ visibleobjects.reserve(renderables.size()); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:83:37: error: request for member ‘begin’ in ‘((cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = renderables.begin(); it != renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:83:65: error: request for member ‘end’ in ‘((cilantro::Visualizer*)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = renderables.begin(); it != renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:84:32: error: ‘obj’ was not declared in this scope ManagedRenderable obj = &(it->second); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:86:33: error: request for member ‘emplace_back’ in ‘visible_objects’, which is of non-class type ‘int’ visible_objects.emplace_back(std::make_tuple(!obj->first->getDrawLast(), obj->first->getRenderingProperties().opacity == 1.0f, (R(obj->first->getCentroid()) + t).squaredNorm()), obj); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:90:35: error: request for member ‘begin’ in ‘visible_objects’, which is of non-class type ‘int’ std::sort(visible_objects.begin(), visibleobjects.end(), RenderPriorityComparator()); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:90:60: error: request for member ‘end’ in ‘visible_objects’, which is of non-class type ‘int’ std::sort(visible_objects.begin(), visibleobjects.end(), RenderPriorityComparator()); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:92:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:98:48: error: request for member ‘size’ in ‘visible_objects’, which is of non-class type ‘int’ for (size_t i = 0; i < visible_objects.size(); i++) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:99:30: error: invalid types ‘int[size_t {aka long unsigned int}]’ for array subscript visible_objects[i].second->first->updateGPUBuffersAndRender((visible_objects[i].second->second)); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:99:92: error: invalid types ‘int[size_t {aka long unsigned int}]’ for array subscript visible_objects[i].second->first->updateGPUBuffersAndRender((visible_objects[i].second->second)); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:102:40: error: ‘videorecorder’ was not declared in this scope if (video_record_onrender && videorecorder) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::finishFrame()’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:112:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘std::vector cilantro::Visualizer::getObjectNames() const’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:132:51: error: request for member ‘size’ in ‘((const cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘const int’ std::vectorstd::string res(renderables.size()); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:134:37: error: request for member ‘begin’ in ‘((const cilantro::Visualizer)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘const int’ for (auto it = renderables.begin(); it != renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:134:65: error: request for member ‘end’ in ‘((const cilantro::Visualizer*)this)->cilantro::Visualizer::renderables’, which is of non-class type ‘const int’ for (auto it = renderables.begin(); it != renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setPerspectiveProjectionMatrix(size_t, size_t, pangolin::GLprecision, pangolin::GLprecision, pangolin::GLprecision, pangolin::GLprecision, pangolin::GLprecision, pangolin::GLprecision)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:146:9: error: ‘inputhandler’ was not declared in this scope inputhandler->SetPerspectiveProjectionMatrix(pangolin::ProjectionMatrix((int)w, (int)h, fu, fv, u0, v0, zNear, zFar)); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setPerspectiveProjectionMatrix(size_t, size_t, const Matrix3f&, pangolin::GLprecision, pangolin::GLprecision)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:155:9: error: ‘inputhandler’ was not declared in this scope inputhandler->SetPerspectiveProjectionMatrix(pangolin::ProjectionMatrix((int)w, (int)h, intrinsics(0,0), intrinsics(1,1), intrinsics(0,2), intrinsics(1,2), zNear, zFar)); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setOrthographicProjectionMatrix(pangolin::GLprecision, pangolin::GLprecision, pangolin::GLprecision, pangolin::GLprecision, pangolin::GLprecision, pangolin::GLprecision)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:163:9: error: ‘inputhandler’ was not declared in this scope inputhandler->SetOrthographicProjectionMatrix(left, right, bottom, top, near, far); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setOrthographicProjectionMatrix(pangolin::GLprecision, pangolin::GLprecision, pangolin::GLprecision)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:171:9: error: ‘inputhandler’ was not declared in this scope inputhandler->SetOrthographicProjectionMatrix(-heightaspect/2.0, heightaspect/2.0, -height/2.0, height/2.0, near, far); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘const cilantro::Visualizer& cilantro::Visualizer::getCameraPose(Eigen::Ref<Eigen::Matrix<float, 4, 4> >) const’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:176:30: error: ‘ToEigen’ is not a member of ‘pangolin’ pose = cam_axes_rot_pangolin::ToEigen(gl_renderstate->GetModelViewMatrix()); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:176:48: error: expected primary-expression before ‘float’ pose = cam_axes_rot_pangolin::ToEigen(gl_renderstate->GetModelViewMatrix()); ^ In file included from /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:1:0: /home/gyc/桌面/3D/cilantro/include/cilantro/common_renderables.hpp:249:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptrpangolin::GlFont glFont; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setCameraPose(const Vector3f&, const Vector3f&, const Vector3f&)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:199:9: error: ‘gl_renderstate’ was not declared in this scope gl_renderstate->SetModelViewMatrix(pangolin::ModelViewLookAt(position(0), position(1), position(2), look_at(0), look_at(1), look_at(2), up_direction(0), up_direction(1), up_direction(2))); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setCameraPose(float, float, float, float, float, float, float, float, float)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:207:9: error: ‘gl_renderstate’ was not declared in this scope gl_renderstate->SetModelViewMatrix(pangolin::ModelViewLookAt(pos_x, pos_y, pos_z, look_at_x, look_at_y, look_at_z, up_dir_x, up_dir_y, up_dir_z)); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setCameraPose(const Eigen::Ref<const Eigen::Matrix<float, 4, 4> >&)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:219:9: error: ‘gl_renderstate’ was not declared in this scope gl_renderstate->SetModelViewMatrix(model_view); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘const cilantro::Visualizer& cilantro::Visualizer::getDefaultCameraPose(Eigen::Ref<Eigen::Matrix<float, 4, 4> >) const’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:224:30: error: ‘ToEigen’ is not a member of ‘pangolin’ pose = cam_axes_rot_pangolin::ToEigen(inputhandler->default_model_view); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:224:48: error: expected primary-expression before ‘float’ pose = cam_axes_rot_pangolin::ToEigen(inputhandler->default_model_view); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setDefaultCameraPose(const Vector3f&, const Vector3f&, const Vector3f&)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:247:9: error: ‘inputhandler’ was not declared in this scope inputhandler->default_model_view = pangolin::ModelViewLookAt(position(0), position(1), position(2), look_at(0), look_at(1), look_at(2), up_direction(0), up_direction(1), up_direction(2)); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setDefaultCameraPose(float, float, float, float, float, float, float, float, float)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:255:9: error: ‘inputhandler’ was not declared in this scope inputhandler->default_model_view = pangolin::ModelViewLookAt(pos_x, pos_y, pos_z, look_at_x, look_at_y, look_at_z, up_dir_x, up_dir_y, up_dir_z); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::setDefaultCameraPose(const Eigen::Ref<const Eigen::Matrix<float, 4, 4> >&)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:267:9: error: ‘inputhandler’ was not declared in this scope inputhandler->default_model_view = model_view; ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::registerKeyboardCallback(unsigned char, std::function<void()>)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:272:9: error: ‘inputhandler’ was not declared in this scope inputhandler->key_callback_map[key] = std::move(func); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘pangolin::TypedImage cilantro::Visualizer::getRenderImage(float, bool)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:277:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:302:29: error: ‘PixelFormat’ in namespace ‘pangolin’ does not name a type const pangolin::PixelFormat fmt = pangolin::PixelFormatFromString("RGBA32"); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:303:47: error: ‘fmt’ was not declared in this scope pangolin::TypedImage buffer(w, h, fmt); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:320:29: error: ‘PixelFormat’ in namespace ‘pangolin’ does not name a type const pangolin::PixelFormat fmt = pangolin::PixelFormatFromString("RGB24"); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:321:47: error: ‘fmt’ was not declared in this scope pangolin::TypedImage buffer(w, h, fmt); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::saveRenderAsImage(const string&, float, float, bool)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:342:61: error: no matching function for call to ‘SaveImage(pangolin::TypedImage&, pangolin::VideoPixelFormat&, const string&, bool, float&)’ SaveImage(image, image.fmt, file_name, true, quality); ^ In file included from /usr/local/include/pangolin/gl/gl.h:33:0, from /usr/local/include/pangolin/pangolin.h:34, from /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer_handler.hpp:6, from /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:9, from /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:1: /usr/local/include/pangolin/image/image_io.h:74:6: note: candidate: void pangolin::SaveImage(const pangolin::TypedImage&, const string&, bool) void SaveImage(const TypedImage& image, const std::string& filename, bool top_line_first = true); ^ /usr/local/include/pangolin/image/image_io.h:74:6: note: candidate expects 3 arguments, 5 provided In file included from /usr/local/include/pangolin/gl/gl.h:33:0, from /usr/local/include/pangolin/pangolin.h:34, from /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer_handler.hpp:6, from /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:9, from /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:1: /usr/local/include/pangolin/image/image_io.h:71:6: note: candidate: void pangolin::SaveImage(const pangolin::Image&, const pangolin::VideoPixelFormat&, const string&, bool) void SaveImage(const Image& image, const pangolin::VideoPixelFormat& fmt, const std::string& filename, bool top_line_first = true); ^ /usr/local/include/pangolin/image/image_io.h:71:6: note: candidate expects 4 arguments, 5 provided /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::startVideoRecording(const string&, size_t, bool, float, bool)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:361:9: error: ‘videorecorder’ was not declared in this scope videorecorder.reset(new pangolin::VideoOutput(output_uri)); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:363:9: error: ‘PixelFormat’ is not a member of ‘pangolin’ pangolin::PixelFormat fmt(pangolin::PixelFormatFromString((rgba) ? "RGBA32" : "RGB24")); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:368:95: error: ‘fmt’ was not declared in this scope videorecorder->SetStreams(std::vectorpangolin::StreamInfo(1, pangolin::StreamInfo(fmt, w, h, pitch))); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::recordVideoFrame()’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:374:13: error: ‘videorecorder’ was not declared in this scope if (videorecorder) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:377:67: error: no matching function for call to ‘pangolin::TypedImage::TypedImage(size_t&, size_t&, pangolin::VideoPixelFormat&)’ pangolin::TypedImage img_flipped(img.w, img.h, img.fmt); ^ In file included from /usr/local/include/pangolin/gl/gl.h:33:0, from /usr/local/include/pangolin/pangolin.h:34, from /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer_handler.hpp:6, from /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:9, from /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:1: /usr/local/include/pangolin/image/image_io.h:44:12: note: candidate: pangolin::TypedImage::TypedImage(size_t, size_t, size_t, unsigned char, const pangolin::VideoPixelFormat&) inline TypedImage(size_t w, size_t h, size_t pitch, unsigned char ptr, const VideoPixelFormat& fmt) ^ /usr/local/include/pangolin/image/image_io.h:44:12: note: candidate expects 5 arguments, 3 provided /usr/local/include/pangolin/image/image_io.h:39:12: note: candidate: pangolin::TypedImage::TypedImage() inline TypedImage() ^ /usr/local/include/pangolin/image/image_io.h:39:12: note: candidate expects 0 arguments, 3 provided /usr/local/include/pangolin/image/image_io.h:37:8: note: candidate: pangolin::TypedImage::TypedImage(const pangolin::TypedImage&) struct TypedImage : public Image ^ /usr/local/include/pangolin/image/image_io.h:37:8: note: candidate expects 1 argument, 3 provided /usr/local/include/pangolin/image/image_io.h:37:8: note: candidate: pangolin::TypedImage::TypedImage(pangolin::TypedImage&&) /usr/local/include/pangolin/image/image_io.h:37:8: note: candidate expects 1 argument, 3 provided /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::stopVideoRecording()’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:388:13: error: ‘videorecorder’ was not declared in this scope if (videorecorder) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp: In member function ‘void cilantro::Visualizer::init_(const string&, const string&)’: /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:397:23: error: ‘FindContext’ is not a member of ‘pangolin’ glcontext = pangolin::FindContext(window_name); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:400:27: error: ‘FindContext’ is not a member of ‘pangolin’ glcontext = pangolin::FindContext(window_name); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:402:22: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:408:9: error: ‘gl_renderstate’ was not declared in this scope gl_renderstate.reset(new pangolin::OpenGlRenderState(pangolin::ProjectionMatrix(640, 480, 525, 525, 319.5, 239.5, 0.1, 100), pangolin::ModelViewLookAt(0, 0, 0, 0, 0, 1, 0, -1, 0))); ^ /home/gyc/桌面/3D/cilantro/src/visualizer.cpp:409:9: error: ‘inputhandler’ was not declared in this scope inputhandler.reset(new VisualizerHandler(this)); ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp: In member function ‘virtual void cilantro::PointCloudRenderable::render(cilantro::GPUBufferObjects&)’: /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:103:101: error: too many arguments to function ‘void pangolin::RenderVboCbo(pangolin::GlBuffer&, pangolin::GlBuffer&, bool)’ pangolin::RenderVboCbo(gl_buffers->pointBuffer, gl_buffers->colorBuffer, true, GL_POINTS); ^ In file included from /usr/local/include/pangolin/pangolin.h:36:0, from /home/gyc/桌面/3D/cilantro/include/cilantro/common_renderables.hpp:7, from /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:1: /usr/local/include/pangolin/gl/glvbo.h:113:13: note: declared here inline void RenderVboCbo(GlBuffer& vbo, GlBuffer& cbo, bool draw_color) ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:108:101: error: too many arguments to function ‘void pangolin::RenderVboCbo(pangolin::GlBuffer&, pangolin::GlBuffer&, bool)’ pangolin::RenderVboCbo(gl_buffers->pointBuffer, gl_buffers->colorBuffer, true, GL_POINTS); ^ In file included from /usr/local/include/pangolin/pangolin.h:36:0, from /home/gyc/桌面/3D/cilantro/include/cilantro/common_renderables.hpp:7, from /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:1: /usr/local/include/pangolin/gl/glvbo.h:113:13: note: declared here inline void RenderVboCbo(GlBuffer& vbo, GlBuffer& cbo, bool draw_color) ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:121:75: error: too many arguments to function ‘void pangolin::RenderVbo(pangolin::GlBuffer&)’ pangolin::RenderVbo(gl_buffers->normalEndPointBuffer, GL_LINES); ^ In file included from /usr/local/include/pangolin/pangolin.h:36:0, from /home/gyc/桌面/3D/cilantro/include/cilantro/common_renderables.hpp:7, from /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:1: /usr/local/include/pangolin/gl/glvbo.h:99:13: note: declared here inline void RenderVbo(GlBuffer& vbo) ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp: In member function ‘virtual void cilantro::PointCorrespondencesRenderable::render(cilantro::GPUBufferObjects&)’: /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:166:69: error: too many arguments to function ‘void pangolin::RenderVbo(pangolin::GlBuffer&)’ pangolin::RenderVbo(gl_buffers->lineEndPointBuffer, GL_LINES); ^ In file included from /usr/local/include/pangolin/pangolin.h:36:0, from /home/gyc/桌面/3D/cilantro/include/cilantro/common_renderables.hpp:7, from /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:1: /usr/local/include/pangolin/gl/glvbo.h:99:13: note: declared here inline void RenderVbo(GlBuffer& vbo) ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp: In member function ‘virtual void cilantro::CoordinateFrameRenderable::render(cilantro::GPUBufferObjects&)’: /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:186:9: error: ‘glDrawColoredVertices’ is not a member of ‘pangolin’ pangolin::glDrawColoredVertices<float,float>(6, verts, cols, GL_LINES, 3, 4); ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:186:41: error: expected primary-expression before ‘float’ pangolin::glDrawColoredVertices<float,float>(6, verts, cols, GL_LINES, 3, 4); ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp: In member function ‘virtual void cilantro::CameraFrustumRenderable::render(cilantro::GPUBufferObjects&)’: /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:205:9: error: ‘glDrawFrustum’ is not a member of ‘pangolin’ pangolin::glDrawFrustum(inverseIntrinsics, (int)width, (int)height, pose, scale); ^ In file included from /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:2:0: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:25:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptr addObject(const std::string &name, const std::shared_ptr &obj_ptr) { ^ In file included from /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:2:0: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:33:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptr addObject(const std::string &name, Args&&... args) { ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:41:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptr getObject(const std::string &name) { ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:184:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptrpangolin::OpenGlRenderState gl_renderstate; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:185:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptr inputhandler; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:186:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type std::shared_ptrpangolin::VideoOutput videorecorder; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:194:27: error: ‘shared_ptr’ is not a member of ‘std’ typedef std::pair<std::shared_ptr,std::shared_ptr> ManagedRenderable; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:194:27: error: ‘shared_ptr’ is not a member of ‘std’ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:194:53: error: wrong number of template arguments (1, should be 2) typedef std::pair<std::shared_ptr,std::shared_ptr> ManagedRenderable; ^ In file included from /usr/include/c++/5/bits/stl_algobase.h:64:0, from /usr/include/c++/5/bits/char_traits.h:39, from /usr/include/c++/5/ios:40, from /usr/include/c++/5/ostream:38, from /usr/include/c++/5/iostream:39, from /usr/local/include/pangolin/utils/type_convert.h:31, from /usr/local/include/pangolin/image/image_common.h:32, from /usr/local/include/pangolin/image/image_io.h:32, from /usr/local/include/pangolin/gl/gl.h:33, from /usr/local/include/pangolin/pangolin.h:34, from /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer_handler.hpp:6, from /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:1: /usr/include/c++/5/bits/stl_pair.h:96:12: note: provided for ‘template<class T1, class T2> struct std::pair’ struct pair ^ In file included from /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:2:0: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:194:54: error: expected unqualified-id before ‘,’ token typedef std::pair<std::shared_ptr,std::shared_ptr> ManagedRenderable; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:196:30: error: ‘ManagedRenderable’ was not declared in this scope std::mapstd::string,ManagedRenderable renderables; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:196:47: error: template argument 2 is invalid std::mapstd::string,ManagedRenderable renderables; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:196:47: error: template argument 4 is invalid /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:80: error: ‘ManagedRenderable’ was not declared in this scope inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:98: error: template argument 2 is invalid inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:42: error: invalid use of template-name ‘std::pair’ without an argument list inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:201:51: error: expected ‘,’ or ‘...’ before ‘<’ token inline bool operator()(const std::pair<std::tuple<bool,bool,float>,ManagedRenderable> &o1, ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::enablePerspectiveProjection()’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:98:13: error: ‘inputhandler’ was not declared in this scope inputhandler->EnablePerspectiveProjection(); ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::enableOrthographicProjection()’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:103:13: error: ‘inputhandler’ was not declared in this scope inputhandler->EnableOrthographicProjection(); ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘cilantro::Visualizer& cilantro::Visualizer::toggleProjectionMode()’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:107:53: error: ‘inputhandler’ was not declared in this scope inline Visualizer& toggleProjectionMode() { inputhandler->ToggleProjectionMode(); return this; } ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘bool cilantro::Visualizer::isRecording() const’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:170:52: error: ‘videorecorder’ was not declared in this scope inline bool isRecording() const { return !!videorecorder; } ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘pangolin::OpenGlRenderState cilantro::Visualizer::getRenderState() const’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:176:77: error: ‘gl_renderstate’ was not declared in this scope inline pangolin::OpenGlRenderState getRenderState() const { return gl_renderstate.get(); } ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘cilantro::VisualizerHandler cilantro::Visualizer::getInputHandler() const’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:178:68: error: ‘inputhandler’ was not declared in this scope inline VisualizerHandler getInputHandler() const { return inputhandler.get(); } ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp: In member function ‘bool cilantro::Visualizer::RenderPriorityComparator_::operator()(int) const’: /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:204:24: error: ‘o1’ was not declared in this scope return o1.first > o2.first; ^ /home/gyc/桌面/3D/cilantro/include/cilantro/visualizer.hpp:204:35: error: ‘o2’ was not declared in this scope return o1.first > o2.first; ^ /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp: In constructor ‘cilantro::VisualizerHandler::VisualizerHandler(cilantro::Visualizer)’: /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:21:50: error: ‘class cilantro::Visualizer’ has no member named ‘gl_renderstate’ perspective_projection(visualizer->gl_renderstate->GetProjectionMatrix()), ^ /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:22:46: error: ‘class cilantro::Visualizer’ has no member named ‘gl_renderstate’ default_model_view(visualizer->gl_renderstate->GetModelViewMatrix()), ^ /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:23:37: error: ‘class cilantro::Visualizer’ has no member named ‘gl_renderstate’ cam_state(visualizer->gl_renderstate.get()), ^ /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp: In member function ‘virtual void cilantro::VisualizerHandler::Keyboard(pangolin::View&, unsigned char, int, int, bool)’: /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:41:42: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ visualizer->glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:42:57: error: request for member ‘begin’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:42:97: error: request for member ‘end’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:50:42: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ visualizer->glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:51:57: error: request for member ‘begin’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:51:97: error: request for member ‘end’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:60:42: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ visualizer->glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:61:57: error: request for member ‘begin’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:61:97: error: request for member ‘end’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:69:42: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ visualizer->glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:70:57: error: request for member ‘begin’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:70:97: error: request for member ‘end’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizer_handler.cpp:88:42: error: ‘struct pangolin::PangolinGl’ has no member named ‘MakeCurrent’ visualizer->glcontext->MakeCurrent(); ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:89:57: error: request for member ‘begin’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/visualizerhandler.cpp:89:97: error: request for member ‘end’ in ‘((cilantro::VisualizerHandler*)this)->cilantro::VisualizerHandler::visualizer->cilantro::Visualizer::renderables’, which is of non-class type ‘int’ for (auto it = visualizer->renderables.begin(); it != visualizer->renderables.end(); ++it) { ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp: In member function ‘virtual void cilantro::TriangleMeshRenderable::render(cilantro::GPUBufferObjects&)’: /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:405:105: error: too many arguments to function ‘void pangolin::RenderVboCbo(pangolin::GlBuffer&, pangolin::GlBuffer&, bool)’ pangolin::RenderVboCbo(gl_buffers->vertexBuffer, gl_buffers->colorBuffer, true, GL_TRIANGLES); ^ In file included from /usr/local/include/pangolin/pangolin.h:36:0, from /home/gyc/桌面/3D/cilantro/include/cilantro/common_renderables.hpp:7, from /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:1: /usr/local/include/pangolin/gl/glvbo.h:113:13: note: declared here inline void RenderVboCbo(GlBuffer& vbo, GlBuffer& cbo, bool draw_color) ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:412:109: error: too many arguments to function ‘void pangolin::RenderVboCbo(pangolin::GlBuffer&, pangolin::GlBuffer&, bool)’ pangolin::RenderVboCbo(gl_buffers->vertexBuffer, gl_buffers->colorBuffer, true, GL_TRIANGLES); ^ In file included from /usr/local/include/pangolin/pangolin.h:36:0, from /home/gyc/桌面/3D/cilantro/include/cilantro/common_renderables.hpp:7, from /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:1: /usr/local/include/pangolin/gl/glvbo.h:113:13: note: declared here inline void RenderVboCbo(GlBuffer& vbo, GlBuffer& cbo, bool draw_color) ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:417:109: error: too many arguments to function ‘void pangolin::RenderVboCbo(pangolin::GlBuffer&, pangolin::GlBuffer&, bool)’ pangolin::RenderVboCbo(gl_buffers->vertexBuffer, gl_buffers->colorBuffer, true, GL_TRIANGLES); ^ In file included from /usr/local/include/pangolin/pangolin.h:36:0, from /home/gyc/桌面/3D/cilantro/include/cilantro/common_renderables.hpp:7, from /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:1: /usr/local/include/pangolin/gl/glvbo.h:113:13: note: declared here inline void RenderVboCbo(GlBuffer& vbo, GlBuffer& cbo, bool draw_color) ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:431:75: error: too many arguments to function ‘void pangolin::RenderVbo(pangolin::GlBuffer&)’ pangolin::RenderVbo(gl_buffers->normalEndPointBuffer, GL_LINES); ^ In file included from /usr/local/include/pangolin/pangolin.h:36:0, from /home/gyc/桌面/3D/cilantro/include/cilantro/common_renderables.hpp:7, from /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:1: /usr/local/include/pangolin/gl/glvbo.h:99:13: note: declared here inline void RenderVbo(GlBuffer& vbo) ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp: In member function ‘virtual void cilantro::TextRenderable::updateGPUBuffers(cilantro::GPUBufferObjects&)’: /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:463:21: error: ‘struct cilantro::TextGPUBufferObjects’ has no member named ‘glFont’ gl_buffers->glFont.reset(new pangolin::GlFont(AnonymousPro_ttf, renderingProperties.fontSize)); ^ /home/gyc/桌面/3D/cilantro/src/common_renderables.cpp:464:42: error: ‘struct cilantro::TextGPUBufferObjects’ has no member named ‘glFont’ gl_buffers->glText = gl_buffers->glFont->Text(text); ^ CMakeFiles/cilantro.dir/build.make:598: recipe for target 'CMakeFiles/cilantro.dir/src/visualizer_handler.cpp.o' failed make[2]: [CMakeFiles/cilantro.dir/src/visualizer_handler.cpp.o] Error 1 CMakeFiles/cilantro.dir/build.make:585: recipe for target 'CMakeFiles/cilantro.dir/src/visualizer.cpp.o' failed make[2]: [CMakeFiles/cilantro.dir/src/visualizer.cpp.o] Error 1 CMakeFiles/cilantro.dir/build.make:546: recipe for target 'CMakeFiles/cilantro.dir/src/common_renderables.cpp.o' failed make[2]: [CMakeFiles/cilantro.dir/src/common_renderables.cpp.o] Error 1 CMakeFiles/Makefile2:143: recipe for target 'CMakeFiles/cilantro.dir/all' failed make[1]: [CMakeFiles/cilantro.dir/all] Error 2 Makefile:132: recipe for target 'all' failed make: *** [all] Error 2

kzampog commented 4 years ago

Hi,

Are you using a recent version of Pangolin (built with Eigen support)?

shugao1 commented 4 years ago

Pangolin installed successfully from the git clone https://github.com/zzx2GH/Pangolin.git, other libraries failed;

Eigen installs Eigen3.4 from surfelwarp

github

Algomorph commented 4 years ago

@shugao1 , have you tried with a recent Pangolin version, i.e. a fresh clone from https://github.com/stevenlovegrove/Pangolin.git? Also: you have to make sure that Pangolin, surfelwarp, and cilantro all use the same version of Eigen. So if you're using the experimental Eigen from the Eigen3.4 folder (which actually isn't Eigen 3.4, in fact) then you need to use that everywhere.

P.S. You have to specify the location of Eigen on disk, e.g. Eigen3.4 within surfelwarp, as a CMake argument all the libraries you're building. If you are new to CMake, I recommend to try cmake-gui with "grouped" and "advanced" checked to explore what the parameters are and set the values manually before build.