在ubuntu上通过编译源代码生成并安装MAVSDK-C++

版本说明:

ubuntu server 20.0.04

MAVSDK 1.3.1

PX4官网通过编译源代码安装MAVSDK的文章如下:

Building library from Source · MAVSDK Guide

通过编译源代码生成并安装MAVSDK-C++软件库,对于非x86的机器尤其有用,比如:树梅派等机器。

1. 下载MAVSDK源代码主干

git clone https://github.com/mavlink/MAVSDK.git

2. 下载MAVSDK源代码的子模块

git submodule update –init –recursive

注:这一步是下载MAVSDK所需要的第三方软件, 如果这一步有异常,可用git clone单独下载。

这些第三方软件是:

mavsdk-proto软件包(这一项可忽略)

访问地址:github.com/mavlink/MAVSDK-proto.git

存放目录:/MAVSDK/proto

gtest软件包

访问地址: github.com/google/googletest

存放目录:/MAVSDK/src/third_party/gtest

mavlink_v2软件包

访问地址:github.com/mavlink/c_library_v2.git

存放目录:/MAVSDK/src/third_party/mavlink/include/mavlink/v2.0

3. 编译配置

  进行编译之前需要做编译配置,编译配置有两种,一种是调试版,一种是发行版。

  • 调试版的编译配置:

    cmake -DCMAKE_BUILD_TYPE=Debug -Bbuild/default -H.

  • 发行版的编译配置:

    cmake -Bbuild/default -DCMAKE_BUILD_TYPE=Release -H.

注:编译配置主要是检查并测试编译环境是否合格,另外在对MAVSDK的主要源程序编译之前需要下载并编译一些第三方软件包。编译配置这个过程是比较容易出现异常中断的,问题主要出现在下载第三方软件时,github.com的网站的访问异常导致这个过程中断,这些第三方软件包是:

jsoncpp软件包

访问地址:github.com/open-source-parsers/jsoncpp

存放地址:/MAVSDK/build/default/third_party/jsoncpp

tinyxml2软件包

访问地址:github.com/leethomason/tinyxml2/

存放地址:/MAVSDK/build/default/third_party/tinyxml2

zlib软件包

访问地址:github.com/madler/zlib

存放地址:/MAVSDK/build/default/third_party/zlib

curl软件包

访问地址:github.com/curl/curl.git

存放地址:/MAVSDK/build/default/third_party/curl

    如果编译配置过程失败,如果是因为某个第三方软件包下载不下来而中断,则建议重新执行上述命令。这条命令是增量式的,可以多次执行此命令直至将所有第三方软件包下载成功。

4.编译

cmake --build build/default -j8

注:我这台笔记本的cpu数是8,所以用了-j8。但是对于树梅派来说,应该查看它的cpu数(命令lscpu),如果cpu数是4,则上述-j8应该改成-j4。选择合适的cpu数做编译可以显著提高编译速度。

5.安装MAVSDK链接库

asystem-wide install(系统级安装)

sudo cmake --build build/default --target install

这个命令将把MAVSDK的链接库和应用程序编译时所需要的头文件安装到/usr/local目录中。

blocal install(本地安装)

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=install -Bbuild/default -H.

cmake --build build/default --target install

其中:cmake语句中的DCMAKE_INSTALL_PREFIX变量指定了安装目录,这里的=install指定安装目录为MAVSDK/install


 


 

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值