文章目录
-
- 编译环境
- 源码下载
- Cmake编译
- Visual Studio&QtCreator编译libQGLViewer
- 结果
- 出现问题以及解决方案
编译环境
如题,本文介绍如何在Windows平台下编译g2o,其他平台更简单?。
现有环境:vs2017,Eigen(非必要),qt5.13.0以及相应vs组件。
源码下载
libQGLViewer,g2o
Cmake编译
打开Cmake,选择源代码路径,设置好中间文件生成路径,其他设置按照下图配置即可。
依次点击:Configure->Generate->Open Project,然后选择生成->批生成,勾选Debug和Release以及Install选项,开始即可。等待十几分钟之后就编译好啦。
Visual Studio&QtCreator编译libQGLViewer
为什么要编译libQGLViewer,是因为g2o中包含了一个可以显示节点的g2o_viewer,需要用到它。
双击libQGLViewer-2.7.2.pro
,如果本地环境都配置好了的话,会自动打开Qt Creator。
选择:构建->构建所有项目,打开编译输出窗口,等待编译完成即可。
结果
- g2o Release (提前测试了一下g2o viewer)
========== 生成: 成功 47 个,失败 0 个,最新 7 个,跳过 0 个 ========== - g2o Debug
========== 生成: 成功 54 个,失败 0 个,最新 0 个,跳过 0 个 ========== - g2o viewer
出现问题以及解决方案
- error: LNK1181: cannot open input file ‘QGLViewer2.lib’
原因:编译对应的例子时,出现找不到库文件的情况,但是真实情况是这个库文件已经存在于libQGLViewer的源文件目录中。
解决方案:忽略就行,这些例子可以不用编译先,本文主要介绍g2o viewer的编译,直接将生成的QGLViewer2.lib
和QGLViewerd2.lib
手动拷贝到合适的路径即可。
2. 其他问题几乎不会遇到,遇到就参见其他博客
3. 如有需要已经编译好的安装包的,详情请见