Ubuntu14.04安装g2o遇到的问题及解决方案

最大的问题在于安装依赖项libqglviewer-dev,这个依赖项安装后在编译(build)中通不过:

[ 57%] Linking CXX executable ../../../../bin/g2o_viewer
/home/luoyongheng/anaconda3/lib/libQt5Widgets.so.5.6.2:对‘operator delete[](void*, unsigned long)@CXXABI_1.3.9’未定义的引用
/home/luoyongheng/anaconda3/lib/libQt5Core.so.5.6.2:对‘__cxa_throw_bad_array_new_length@CXXABI_1.3.8’未定义的引用
/home/luoyongheng/anaconda3/lib/libQt5Widgets.so.5.6.2:对‘operator delete(void*, unsigned long)@CXXABI_1.3.9’未定义的引用
collect2: error: ld returned 1 exit status
make[2]: * [../bin/g2o_viewer] 错误 1
make[1]: * [g2o/apps/g2o_viewer/CMakeFiles/g2o_viewer.dir/all] 错误 2
make: * [all] 错误 2

查看高博的博客才知道应该安装Ubuntu12.04中的依赖项libqglviewer-gt4-dev,这个包只能手动下载,于是参考了这个教程:https://blog.csdn.net/jiujiu932/article/details/52248577
注意,安装顺序应改为:
sudo dpkg -i libqglviewer-qt4-2_2.3.4-4ubuntu2_amd64.deb
sudo dpkg -i libqglviewer-dev-common_2.3.4-4ubuntu2_all.deb
sudo dpkg -i libqglviewer-qt4-dev_2.3.4-4ubuntu2_amd64.deb
此时,第一条指令就不成功,报错为:

正在选中未选择的软件包 libqglviewer-qt4-2:amd64。
(正在读取数据库 … 系统当前共安装有 306642 个文件和目录。)
正准备解包 libqglviewer-qt4-2_2.3.4-4ubuntu2_amd64.deb …
正在解包 libqglviewer-qt4-2:amd64 (2.3.4-4ubuntu2) …
dpkg: 依赖关系问题使得 libqglviewer-qt4-2:amd64 的配置工作不能继续:
libqglviewer2:amd64 (2.5.0+dfsg-1)破坏 libqglviewer-qt4-2 (<< 2.3.17~) 并且 已安装。
将被配置的 libqglviewer-qt4-2:amd64 的版本为 2.3.4-4ubuntu2。
dpkg: 处理软件包 libqglviewer-qt4-2:amd64 (–install)时出错:
依赖关系问题 - 仍未被配置
在处理时有错误发生:
libqglviewer-qt4-2:amd64

现在卸载libqglviewer-dev:
sudo apt-get remove libqglviewer-de
清除干净:sudo apt-get autoremove
(将会清除掉libqglviewer-doc libqglviewer2:
如果此时不清除,在后面两步安装易出现问题:

dpkg: 关于含有 libqglviewer-dev-common 的 libqglviewer-dev-common_2.3.4-4ubuntu2_all.deb:
libqglviewer-doc 冲突于 libqglviewer-dev-common
即将安装 libqglviewer-dev-common (版本为 2.3.4-4ubuntu2)。
dpkg: 处理归档 libqglviewer-dev-common_2.3.4-4ubuntu2_all.deb (–install)时出错:
软件包相互冲突 - 将不安装 libqglviewer-dev-common
在处理时有错误发生:
libqglviewer-dev-common_2.3.4-4ubuntu2_all.deb

此时依次执行:
sudo dpkg -i libqglviewer-qt4-2_2.3.4-4ubuntu2_amd64.deb
sudo dpkg -i libqglviewer-dev-common_2.3.4-4ubuntu2_all.deb
sudo dpkg -i libqglviewer-qt4-dev_2.3.4-4ubuntu2_amd64.deb
将不会报错。
然后进入g2o文件夹
mkdir build&&cd build
cmake ..
make
sudo make install


后期使用catkin_make遇到问题

Invoking “cmake” failed
解决办法:

conda install setuptools  

pip install -U rosdep rosinstall_generator wstool rosinstall six vcstools  

后来发现还是没安装g2o_viewer,只有卸载重装:
删除g2o:
rm -rf /usr/local/include/g2o
rm -rf /usr/local/lib/libg2o*
重装g2o(带g2o_viewer)
git clone https://github.com/luoyongheng/g2o_old
sudo apt-get install libqt4-dev
sudo apt-get install qt4-qmake
sudo apt-get install libqglviewer-dev
mkdir build
cd build
cmake ..
make
sudo make install

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值