PX4开发环境搭建--源码下载+基本工具链

这篇具有很好参考价值的文章主要介绍了PX4开发环境搭建--源码下载+基本工具链。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

由于各种原因,国内网络搭建PX4开发环境会比较困难。(而且最近gitee也挂了。)
其实安装过程自己最近几年尝试过很多次,都因为网络问题半途而废了。由于被封闭太久,脑子不太正常,突然又想尝试一下在自己电脑上搭建PX4环境。
本文主要是给自己做个记录。配置过程中参考了许多大佬的经验和文章,非常感谢。另外,相关工具和信息有时效,不能保证几天之后依旧可用。本人对Ubuntu, git等都是小白级别,相信还有很多大佬有更加有效的方法,如果有人看到本文,并且发现有不足,恳请指正。


一、基本工具

Windows 10 笔记本
VirtualBox 6.1
Ubuntu 18.04
可靠的github国内镜像(https://blog.csdn.net/Ejzq1/article/details/123560340)

二、基本步骤

1.安装虚拟机和Ubuntu操作系统

VirtualBox一键安装,在虚拟机上安装Ubuntu操作系统相关流程比较简单。

注意

VirtualBox和Ubuntu的版本,这在VirtualBox的下载页面上写了,自己第一次配置的时候没有注意,VirtualBox6.1 不支持将Ubuntu 22.04,但是自己这么安装了,导致后面的界面问题,浪费了好几个小时。
VirtualBox中安装好Ubuntu 18.04之后,会发现界面很小。这时候需要在VirtualBox 的窗口中选择Device-> Insert Guest Additional CD
PX4开发环境搭建--源码下载+基本工具链
此时Ubuntu桌面上会出现一个光盘图标,直接双击运行(虽然这很不Linux),运行完毕之后重启虚拟机。之后的操作都在Ubuntu上进行。

2. 修改虚拟机上源网站

后面(第4步)需要安装各种工具包,如果没有梯子等,建议使用国内镜像。这里使用阿里云。(之前使用清华源,居然发现有些lib没有。。。不过也有可能是自己在当中有什么操作问题)。网上有很多相关资料。 可参考:
https://developer.aliyun.com/article/639051

(1)备份原来的sources.list

sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup

(2) 打开sources.list进行修改

sudo gedit /etc/apt/sources.list

在文件最前面加上

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

(3)刷新列表

sudo apt-get update
sudo apt-get upgrade

注:这里我只操作了 apt-get update,刷新源网站地址,从而在后面安装各种库时,都从阿里云中下载,加快速度。但是没有执行upgrade。upgrade是把当前安装的lib都升级。之所以没有升级,是因为之前遇到过在安装PX4工具链时,库版本太高而无法安装。个人认为相关升级可以到后面安装时自动进行。

附:apt命令介绍

sudo apt-get update 更新源
sudo apt-get install package 安装包
sudo apt-get remove package 删除包
sudo apt-cache search package 搜索软件包
sudo apt-cache show package 获取包的相关信息,如说明、大小、版本等
sudo apt-get install package --reinstall 重新安装包
sudo apt-get -f install 修复安装
sudo apt-get remove package --purge 删除包,包括配置文件等
sudo apt-get build-dep package 安装相关的编译环境
sudo apt-get upgrade 更新已安装的包
sudo apt-get dist-upgrade 升级系统
sudo apt-cache depends package 了解使用该包依赖那些包
sudo apt-cache rdepends package 查看该包被哪些包依赖
sudo apt-get source package 下载该包的源代码
sudo apt-get clean && sudo apt-get autoclean 清理无用的包
sudo apt-get check 检查是否有损坏的依赖

3. 配置虚拟机上git环境

sudo apt-get install git

之后需要修改git的路径。这就需要用到国内稳定的镜像,并且镜像内容需要经常更新。(自己开始没有注意这点,用了一个很久没更新的镜像,在源码下载和工具链配置完成后进行build才发现很多错误。去github上查看,发现clone下来的完全对不上。)最好自己查找一下。这次使用的是:https://hub.fastgit.xyz/ (参考:https://blog.csdn.net/Ejzq1/article/details/123560340)
git有相关全局配置,可以通过以下命令修改

git config --global url."https://hub.fastgit.xyz".insteadOf https://github.com

通过这个配置,后面git时所有的 github.com 都会被替换成 hub.fastgit.xyz
这个配置的结果可以通过下面方式来看

git config --list

或者直接查看,并且编辑git的config 文件。(这个文件一开始好像没有,似乎只有执行了 git config --global url. “”… insteadof… 这句命令之后才会出现)

git config --global --edit

4. 下载PX4(包括子模块)源码

ctrl+alt+t,然后新建文件夹

mkdir Developer
cd Developer

在Developer文件夹下

git clone https://github.com/PX4/PX4-Autopilot.git --recursive

这里虽然用了 github.com,但是实际上用的是前面修改的 hub.fastgit.xyz。注意有 --recursive。这里执行完毕之后,由于是默认文件夹,在在Developer文件夹下会出现 PX4-Autopilot文件夹
然而,即使recursive了,其实也没有把所有子模块的代码下载下来,还需要执行

cd PX4-Autopilot
git submodule update --init --recursive

才能把子模块也clone下来。
在这里自己踩过一个坑。git下载子模块的是根据PX4-Autopilot文件夹下面的一个隐藏文件 .gitmodules中的内容来的(隐藏文件显示 ctrl+ H)。最开始时,在执行第一次git clone时没有加 recursive,因为怀疑子模块还是会直接从github.com网站下载,速度很慢,所以先希望它不要下载子模块,在有了最上层的PX4-Autopilot之后,修改.gitmodules里面的url路径为再执行 子模块的更新。但是发现,这么做好像没法更新!执行了 submodule update之后,没有任何反应!在这里也浪费了很多时间。后来还是重新克隆了一个PX4-Autopilot,步骤如上所述,并且没有手动改下.gitmodules。前面子模块无法更新的原因,至今是个谜。
“完整的”PX4包括其子模块(我认为“完整的”,因为至少后面可以编译)大概有1.8G,但是错误方法clone,没有子模块的只有824Mb。

5. 配置PX4所需库和工具

在做了上述clone之后,其实PX4的开发者们为方便大家开发,准备好了一个脚本,一键安装工具。

cd PX4-Autopilot/Tools/setup
bash ./ubuntu.sh

后面就可以等着了(当然中间需要输入几次密码)。完成之后重启系统。可以尝试make。

6. 测试

在PX4-Autopilot文件夹下面使用以下命令进行测试

make px4_sitl jmavsim

如果配置和源码下载正常,就可以看到青青草原和小四旋翼飞机啦~
PX4开发环境搭建--源码下载+基本工具链


总结

在Ubuntu上配置PX4环境主要有两个部分,都有难点文章来源地址https://www.toymoban.com/news/detail-414821.html

  • PX4依赖配置,难点是访问国外apt源速度慢,解决方案是修改系统的sources.list
  • PX4完整的源码下载,这里的难点是github 访问太慢(还是网络问题),解决方案是修改git的全局配置,使用github的国内最新、稳定镜像

到了这里,关于PX4开发环境搭建--源码下载+基本工具链的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spring-5.0.x源码下载及本地环境搭建

    从github上下载Spring的源代码 下载地址:https://github.com/spring-projects/spring-framework 访问地址之后,打开Spring的代码页面找到你想下载的版本,如5.0.x,如下图所示: 切换版本后,点右侧的code按钮,拷贝地址,在本地的执行git clone命令 还是在Code按钮中点开,找到下载代码压缩包

    2024年02月11日
    浏览(43)
  • ubuntu搭建PX4无人机仿真环境(4) —— 仿真环境搭建

    前言 在搭建之前,需要把 ROS、MAVROS、QGC 等基础环境安装配置完成。大家可以参考我之前的教程 本次安装是以 px4 v1.13.2 为例。 我的配置如下: 虚拟机 Ubuntu 18.04 (运行内存 4G、硬盘内存 80G) 、ROS melodic 、最新版 QGC 建议安装之前可以先看看这个 👉 ubuntu搭建PX4无人机仿真环境

    2024年02月15日
    浏览(71)
  • 易支付源码最新版开源开发搭建附源码下载

    预计到2024年,全球电子商务销售额将达到6万亿美元,零售商将实体店转移到网上从未像现在这样容易。商家可以建立自己的网站,在网上列出他们的实体产品,完成支付并发展他们的业务,甚至不用离开沙发。现在,数字化转型已经从店面扩展到产品本身。 不管你是否意识

    2024年04月11日
    浏览(45)
  • (最新)ubuntu搭建PX4无人机仿真环境(4) —— 仿真环境搭建

    前言 在搭建之前,需要把 ROS、MAVROS、QGC 等基础环境安装配置完成。大家可以参考我之前的教程 本次安装是以 px4 v1.13.2 为例。 我的配置如下: 虚拟机 Ubuntu 18.04 (运行内存 4G、硬盘内存 80G) 、ROS melodic 、最新版 QGC 建议安装之前可以先看看这个 👉 ubuntu搭建PX4无人机仿真环境

    2024年02月09日
    浏览(51)
  • 完整的Ubuntu20.04+ROS+PX4+Anaconda+PyTorch+GPU+CUDA+CUDNN+XTdrone配置智能无人机开发环境搭建过程

    我之前写了如何在Ubuntu18下搭配一系列软件的教程,然后近期重新安装20.04版本,于是重新记录一些东西,但是众多东西之前已经有了,所以我在这里知会在一些不同的地方和新增的地方特别说明,其他的请大家看之前的博客。 在搞了这么久的ros和px4之后,我也明白了xtdrone是

    2024年02月05日
    浏览(66)
  • (最新)ubuntu搭建PX4无人机仿真环境(1) —— 概念介绍及环境建议

    搭建PX4仿真环境一个有挑战性的过程,如果没有一个有经验的人来带的话会走很多弯路。我在搭建PX4仿真环境的时候,不知道Linux、ROS、git,语言也只会一个C语言,没有任何无人机基础,纯小白一个,靠着自学与网上的各种教程,花了一两个月才搭好基本的仿真环境框架。我

    2024年02月08日
    浏览(56)
  • (最新)ubuntu搭建PX4无人机仿真环境(2) —— MAVROS安装

    MAVROS是一个ROS(Robot Operating System)软件包 , 有了它就可以让ROS与飞控通信。这次安装是以ubuntu 18.04 (ROS Melodic)为例,也适用于其他版本 。安装之前确保 ROS 安装成功,没安装的可以看我仿真系列教程。 (注:安装方式有二进制安装和源码安装两种方式,源码安装需要从Git

    2024年02月09日
    浏览(55)
  • ubuntu搭建PX4无人机仿真环境(3) —— ubuntu安装QGC地面站

    前言 QGC ( QGroundControl) 是一个开源地面站,基于QT开发的,有跨平台的功能。这次安装是基于Ubuntu 18.04,QGC v4.2.6 但也适用于其他ubuntu发行版,QGC 版本也可以自行选择,如果发现不行可以降版本。 搭建仿真环境系列教程 👇 ubuntu搭建PX4无人机仿真环境(1) —— 概念介绍 ubuntu搭

    2024年02月16日
    浏览(41)
  • (最新)ubuntu搭建PX4无人机仿真环境(3) —— ubuntu安装QGC地面站

    前言 QGC ( QGroundControl) 是一个开源地面站,基于QT开发的,有跨平台的功能。这次安装是基于Ubuntu 18.04,QGC v4.2.6 但也适用于其他ubuntu发行版,QGC 版本也可以自行选择,如果发现不行可以降版本。 搭建仿真环境系列教程 👇 ubuntu搭建PX4无人机仿真环境(1) —— 概念介绍 ubuntu搭

    2024年02月09日
    浏览(42)
  • 在ubuntu22.04(LTS)上搭建ROS2+PX4+Gazebo的联合仿真环境

    说明:本案例仅仅是跑通了ROS2+PX4+Gazebo的联合仿真,还没有实现使用键盘控制无人机飞行(以后会补充)。 1.准备工作 2.安装PX4仿真工具链 3.安装ROS2 4.安装ROS2的相关依赖 5.安装XRCE-DDS代理(AGENT) 6.创建ROS2工作空间并生成代码样例 7.运行XRCE代理 8.编译PX4固件并运行 (1)确保

    2024年04月29日
    浏览(81)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包