以下文档介绍了SDK中代码编译执行过程,供用户参考。
Slamtec 提供基于不同系统架构以及不同编译器版本的Linux SDK。SDK中包含了机器人运动,导出地图数据等示例代码,以及编译生成可执行文件所需要的makefile示例。
本页内容
运行环境准备
用户需要自行安装Linux系统,本文档所用系统为windows 10系统下,虚拟机上安装的Ubuntu16.04版本,gcc版本为5.3.1. 使用的SDK版本为X86架构gcc5.4编译版本。
用户需要根据自己的系统情况下载对应的SDK版本。
查看系统gcc版本
可以在terminal中 输入
gcc -v
来查询gcc版本。
SDK示例程序编译流程
- 下载SDK, 默认下载到Downloads文件夹,<web link>替换为对应资源的下载地址。
dan@ubuntu:~$ wget <web link>
2.进入Downloads文件夹,解压缩同名文件夹到相同目录
dan@ubuntu:~$cd Downloads/
dan@ubuntu:~/Downloads$ tar -xzf slamware_sdk_linux-x86_64-gcc5.4.tar.bz2
3. 解压缩之后可以在解压缩的文件夹里面可以获得如下文件夹:
- docs: Slamware SDK通用文档
- linux-x86_64-debug: 包含编译所需头文件以及lib文件
- linux-x86_64-release:编译好的可执行文件会存放在这个文件夹里面
- samples: 示例代码在此文件夹内
- 以及compiler_version.txt, mak_common.inc, mak_def.inc 文件
4. 进入到sample文件夹, make一下makefile
dan@ubuntu:~/Downloads/slamware_sdk_linux-x86_64-gcc5.4$ cd samples/
dan@ubuntu:~/Downloads/slamware_sdk_linux-x86_64-gcc5.4$ make
5. make后生成的可执行文件路径为~/Downloads/slamware_sdk_linux-x86_64-gcc5.4/linux-x86_64-release/output/
6. 在对应路径下执行对应的可执行文件并传入机器人的IP地址即可(默认为192.168.11.1)
dan@ubuntu:~/Downloads/slamware_sdk_linux-x86_64-gcc5.4/linux-x86_64-release/outpudan@ubuntu:~/Downloads/slamware_sdk_linux-x86_64-gcc5.4/linux-x86_64-release/output$ ./moveandpathdemo 192.168.11.1
执行结果
查看sample文件夹内的源文件可知,其包含的源文件由c++编写,对应API的使用说明请详见KBSW180105 SLAMWARE SDK API 参考(Windows),SDK包含的示例makefile会生成三个可执行文件:
- moveandpathdemo:系统会循环输出运动相关信息并在点(2,2),(-2,2),(-2,-2),(2,-2)之间循环移动。
- mapdemo:系统会循环输出激光点数据以及known area尺寸
- map2bmp:系统输出当前地图相关参数并在output文件夹下生成slamware_mapdump.bmp地图文件。