Ubuntu20.04或18.04下PX4(pixhawk)源码编译环境配置教程,及构建代码各种错误解决办法

在 Ubuntu Linux 18.04 和 20.04 上设置 PX4 开发环境,可参考此教程或官方教程Ubuntu Development Environment | PX4 User GuidePX4 is the Professional Autopilot. Developed by world-class developers from industry and academia, and supported by an active world wide community, it powers all kinds of vehicles from racing and cargo drones through to ground vehicles and submersibles.icon-default.png?t=N7T8https://docs.px4.io/master/en/dev_setup/dev_env_linux_ubuntu.html

安装工具链:

如果没将软件源更改为国内软件源,需先将软件源改为国内软件源(建议改为阿里云)

1.下载 PX4 源代码

Ctrl+Alt+T打开终端输入下面代码

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

        往往后面构建代码时出现问题大部分都是这一步因为外网的原因所导致的各子项目文件下载不全所导致的!

解决方案一:解决网络问题,使用全球互联网

        因为github是外国的网站,我们想在上面获取各种子项目嵌套的完整资源,我们需要借助一下全球连通云去进行上网,获取PX4的相关资源。

        可以给大家推荐一个我用了挺久,而且很便宜的全球互联工具:

             https://m.tb.cn/h.gYkdraA?tk=rGksWs9FXc9 CZ0000 【CLOUD FLARE 全球互联工具 24P流量账号!】」

        使用全球连通云基本就可以一次性顺利下载PX4的相关资源了。

解决方案二:下载本人已经从外网下载好的PX4源码

        需要下载完整版源码(各子模块代码齐全)可在我主页上传的资源下载旧版本的PX4-Autopilot.zip(网址:https://download.csdn.net/download/Iamsonice/24192244)因为最大只能上传1G,需要较新版本v1.12.3(v1.13版本后控制分配代码有重大改变)的可以在百度网盘下载。

链接:https://pan.baidu.com/s/173Tl6VJaljo_IkeO4w0K_A?pwd=thwr 
提取码:thwr

        下载后解压到主目录下。

        如果想下载最新版本或其他版本建议使用解决方案一。

2.运行ubuntu.sh以安装所有工具链:

        在主目录打开终端

终端输入(终端路径为主目录下

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

3.完成后重启

环境配置验证

在完成上述环境的搭建之后,就可以开始仿真和固件的编译了

先进行编译环境的测试,打开终端输入

cd PX4-Autopilot
make px4_fmu-v3_default

错误1:Command 'make' not found

按照指示安装输入

sudo apt install make

 错误2:Configuring incomplete, errors occurred!

原因还是因为编译环境还未安装齐全再次输入(可多次运行以免安装不齐全)

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

  错误3:You may need to install it using: pip3 install --user empy

原因还是因为编译环境还未安装齐全Python3,类似的错误(pip3 install --user numpy
、pip3 install --user toml、pip3 install --user packaging...等)按照提示终端输入

pip3 install --user empy

既可(如出现错误多是网络原因多尝试几次即可)

 编译成功

 进行仿真环境的测试(注意:如果此处使用的是虚拟机的话需要注意扩大分配的内存最小需分配4G

终端输入

make px4_sitl jmavsim

Ubuntu18.04一般不会出现错误如Ubuntu20.04出现错误可参考我的这篇博客                                                                Ubuntu20.04配置PX4环境启动或编译jmavsim 出现的错误及解决办法_Iamsonice的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/Iamsonice/article/details/120372120

成功编译和启动

终端输入

make px4_sitl gazebo

注意:如果此处使用的是虚拟机分配了4G内存以下将出现下面的错误(c++: fatal error: Killed signal terminated program cc1plus)因为内存过小直接杀死cc1plus程序

成功编译和启动

码字不易,如果帮到你了点个赞表示鼓励哦

  • 56
    点赞
  • 194
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 46
    评论
### 回答1: Ubuntu 20.0418.04是两个不同版本的Ubuntu操作系统。它们之间的主要区别包括以下几点: 1. 内核版本:Ubuntu 20.04默认使用的是Linux内核5.4,而Ubuntu 18.04默认使用的是Linux内核4.15。新的内核版本通常会提供更好的性能和更好的硬件支持。 2. 桌面环境:Ubuntu 20.04默认使用的是GNOME 3.36桌面环境,而Ubuntu 18.04默认使用的是GNOME 3.28桌面环境。GNOME 3.36提供了一些新的功能和改进,例如更好的应用程序启动器和更好的触摸支持。 3. 应用程序版本:Ubuntu 20.04默认提供了一些新的应用程序版本,例如Firefox 75,LibreOffice 6.4和GIMP 2.10。这些版本通常提供了更好的性能和更多的功能。 4. 支持周期:Ubuntu 20.04是LTS(长期支持)版本,支持期限为10年,而Ubuntu 18.04是LTS版本,支持期限为5年。这意味着,如果您需要更长时间的支持和更新,那么选择Ubuntu 20.04可能更合适。 总之,Ubuntu 20.0418.04都是稳定可靠的操作系统,您可以根据自己的需求选择其中之一。如果您需要更好的性能和更多的新功能,则可能更喜欢Ubuntu 20.04。如果您需要更长时间的支持和更新,则可能更喜欢Ubuntu 18.04。 ### 回答2: Ubuntu是一款广受欢迎的开源操作系统。Ubuntu 20.0418.04分别是Ubuntu的两个版本,它们之间有许多区别。 首先,Ubuntu 20.0418.04的安装程序不同。Ubuntu 20.04拥有新的安装程序,界面更加简洁直观,安装流程也更加快速。而18.04的安装程序则较为传统,较多用户会选择使用命令行进行安装。 其次,Ubuntu 20.04相比18.04提供了更多的新功能。其中包括改进的GNOME 3.36桌面环境、新版Linux内核(5.4)、许多新软件包和更新软件版本等等,这些因素可以为用户带来更好的体验和更高的性能。 另外,20.0418.04考虑到软件和硬件的兼容性也有不同之处。Ubuntu 20.04支持更多的硬件设备和软件包比18.04,特别是对于最新的硬件,如英特尔第十代处理器,其兼容性更好。同时,20.04对容器化等技术提供了更好的支持。 最后,Ubuntu 20.04相比18.04在安全性和稳定性上有更强的保障。Ubuntu 20.04已经引入许多特性,如应用程序沙盒、FIPS-140认证等,为用户提供更加安全可靠的操作环境。在软件更新方面,ubuntu 20.04也更加注重稳定性,并且提供了长期支持(LTS)版本。 综上所述,Ubuntu 20.0418.04在界面、安装和功能等方面存在差异。Ubuntu 20.04提供更多的新功能,硬件和软件兼容性更好,安全性和稳定性更强。因此,用户可根据自身需求和硬件配置选择适合自己的版本。 ### 回答3: Ubuntu 20.04Ubuntu 18.04一样,都是发行版的版本号,是基于Debian Linux的操作系统,他们的主要区别在于以下几个方面: 首先,Ubuntu 20.04的最大的区别是内核的更新,从Ubuntu 18.04的4.15升级到Ubuntu 20.04的5.4,这意味着它带来了更高的性能和更好的硬件支持。此外,Ubuntu 20.04采用了更先进的硬件栈,可以更好地支持最新的硬件设备。 其次,在外观方面,Ubuntu 20.04使用了全新的Yaru主题,为用户提供了更加美观的桌面体验。 再次,在软件更新方面,Ubuntu 20.04通过引入Snap软件包格式来进一步规范和简化了软件安装过程,同时也提供了更好的安全性和隔离性。 最后,在桌面功能方面,Ubuntu 20.04增加了一些新功能,例如添加了Livepatch自动更新功能,令用户不再需要手动更新 kernel 补丁;并且增强了集成式搜索的能力。 总的来说,Ubuntu 20.04展现了更先进的技术和更优化的用户体验,而Ubuntu 18.04则在稳定性和当前流行软件的广泛支持方面仍然是一个出色的选择。当然,具体使用哪个版本,还要看用户的需求和偏好,因为不同版本都有特殊的优势和劣势。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Iamsonice

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值