g2o库编译时出现OPENGL_gl_LIBRARY (ADVANCED)找不到的错误

一、问题描述

最近在学习SLAM,里面涉及到利用g2o优化,但是cmake始终编译失败,如下图所示:
实验环境:Ubuntu 18.04.4
g2o库编译时出现OPENGL_gl_LIBRARY (ADVANCED)找不到的错误_第1张图片

二、解决过程

1.报错:OPENGL_gl_LIBRARY (ADVANCED), 猜测是缺少OPENGL的库,首先检查是否安装完整;

2.安装命令如下:

$ sudo apt-get install libgl1-mesa-dev
$ sudo apt-get install libglu1-mesa-dev
$ sudo apt-get install libglut-dev

3.发现还是没有成功,看网上有人说是因为cmake版本太低,更新之后发现依然并没有解决(期间发现原来ubuntu里默认安装的最新版本已经是18年的cmake了,去github上下最新的就好…),打开 cmake-gui,导入 Cmakelist.txt,勾上advanced选项,发现有地方不对劲,如下图所示:
g2o库编译时出现OPENGL_gl_LIBRARY (ADVANCED)找不到的错误_第2张图片
注意到其中的 OPENGL_gl_LIBRARY-NOTFOUND,验证了我们最开始的想法,但发现并列的其他库都有,于是进入/usr/lib/x86_64-linux-gnu/文件夹下寻找,发现只有 libGL.so.1库文件,这里我采用软链接的方式解决,最后成功编译,make&make install即可。如下

$	sudo ln -s libGL.so.1 libGL.so

三、总结

Cmake-gui 还是有人家存在的道理的哈哈哈哈哈哈,这也是本人第一篇博客,因为在网上始终没找到类似问题的解决方案,故在此分享此坑…

你可能感兴趣的:(g2o库编译时出现OPENGL_gl_LIBRARY (ADVANCED)找不到的错误)