安装octomap时发现bin下没有octovis,解决后决定记录一下,顺便整理octomap安装顺序。
git clone https://github.com/OctoMap/octomap
下载后进入该目录,执行:
mkdir build
cd build
cmake ..
make
这是正常的安装顺序,注意看命令行内容,如果成功则万事大吉,但是很多情况下会报错。大部分为octovis的错误(缺少libQGLViewer)。接下来演示手动安装,安装顺序为:
libQGLViewer->octovis->octomap
1. 安装libQGLViewer
在下载的octomap包里自带libQGL,无需额外下载,其路径为:
octomap-devel/octovis/src/extern/QGLViewer
进入该路径,执行:
mkdir build
cd build
qmake ..
make
make install
其中make install 可能会报错,内容为缺少权限,这时在前面加sudo就行:
sudo make install
注意,安装过程中如无权限报错,不建议加sudo。
安装完成后会在一下路径中生成一个.so文件:
/usr/local/lib/libQGLViewer.so
如果遇到错误,建议删除该.so文件,同时删除build文件夹里的内容重新来一遍。
2. 安装octovis
只要libQGLViewer安装成功,octovis的安装就很顺利了。在目录octomap-devel/octovis/下执行:
mkdir build
cd build
cmake ..
make
安装完成。
此时在路径
octomap-devel/octovis/bin
应有可执行文件octovis。
3. 安装octomap
octovis安装完成后退到octomapdevel路径下进行最后编译安装:
mkdir build
cd build
cmake ..
make
至此,octomap安装成功。
部分问题
1.权限
这个没啥好说的,加sudo 重新执行就行了。
2. libQGLViewer在link时报错:各种undefined 函数什么的。
这个问题一般是cmake或make生成的文件有关,我在碰到这个问题后,首先将/usr/local/lib/libQGLViewer.so删除,然后删除build中的所有文件,重新编译安装就没有问题了。
后期有啥问题评论再问吧,具体的记不太清了,主要就是这俩。