ubuntu14.04安装cuda8.0之后,编译Pangolin会出现下面的error
首先给出Pangolin的安装命令
sudo apt-get install libglew-dev git clone https://github.com/stevenlovegrove/Pangolin.git cd Pangolin mkdir build cd build cmake .. cmake --build .可以看出,Pangolin需要依赖glew,但是如果我们事先安装了cuda,可能就会你下面的error:
error: ‘GL_SHADER_STORAGE_BUFFER’ was not declared in this scope
GlShaderStorageBuffer = GL_SHADER_STORAGE_BUFFER解决方案
因为cuda在安装的时候事先会将
${CUDA_TOOLKIT_ROOT_DIR}/samples/common/inc加入环境变量,所以./include/pangolin/gl/glplatform.h里面的<GL/glew.h>默认的就是上述cuda对应的glew.h的路径,但是手动安装的glew本身也有一个glew.h文件,在/usr/include/GL/glew.h,此文件是包含GL_SHADER_STORAGE_BUFFER的,但cuda的文件是不包含的,参考链接(已在回复中给出一个较好的解决方案),即需要修改一点点源码,方式如下:It works by changing the
<GL/glew.h>in pangolin/gl/glplatform.h using/usr/include/GL/glew.h.

本文介绍在Ubuntu 14.04环境下,安装CUDA 8.0后编译Pangolin出现的错误“GL_SHADER_STORAGE_BUFFER未声明”及解决方法。通过修改Pangolin的源代码,指定使用系统安装的GLEW库来解决问题。
818

被折叠的 条评论
为什么被折叠?



