PX4-Autopolite linux环境下源码编译中遇到的一些问题及相应解决办法

avatar
作者
筋斗云
阅读量:0

      最近在做一个PX4飞控移植的项目,第一次接触到PX4源码,真的是感觉编译起来非常的麻烦,下面我将介绍几个新手比较容易踩坑的点。

(我都踩了ㄒ-ㄒ)

1.PX4源码要用git clone 从github上克隆来,千万不要直接在github中下载压缩包,因为这样下载下来的源码时没有.git文件夹的,.git文件夹在PX4源码编译的过程中是非常重要的,该文件夹是 Git 版本控制系统用来追踪项目更改历史,以及管理和同步代码的文件夹。这个文件夹包含了维护存储库的所有元数据,包括提交历史、分支信息和与远程存储库的交互。

和要在ubuntu中设置好github的访问权限:

ubuntu连接github(新手教学)_ubuntu怎么连接github-CSDN博客

可以参考这篇文章,这位博主写的很全面。

Px4飞控源码克隆,以前老版本的飞控克隆时一般是Firmware,现在是叫PX4-Autopolite

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

如果不好使的话就有几种情况:

(1)本身网络问题

可以使用如下方式克隆:git clone https://gitclone.com/github.com/PX4/PX4-Autopilot.git --recursive(添加了一个git clone.com的镜像网站)

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

(2)可能是如前面提到的没有设置好github的访问权限已经设置了git镜像网站替换,就是本身我们访问的github.com被换成了其他的

这时我们可以使用一个命令去查看

vim ~/.gitconfig 命令即可查看git当前的配置文件

vim ~/.gitconfig 

如果没有vim,输入上面命令会提示安装的,复制粘贴然后安装即可

输入指令会弹出这个,这里主要看url 如果有网址替换的话 url 那里会显示(“目标网址”)insteadof(“替换成的网址”)

想取消的以我遇到了的举例就输入

//去掉镜像网址替换

git config --global --unset url."https://github.com.cnpmjs.org/".insteadOf  

2.安装依赖工具链

这个安装工具链的脚本是官方提供的一键安装脚本

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

3.编译仿真器

make px4_sitl jmavsim

在Px4 autopolite 目录下打开终端

 

编译成功后会在bulid文件夹中生成一个文件(所有的编译构建都在PX4飞控源码的bulid文件夹中)

6. //编译源码

make px4_fmu-v2_default

7. //添加子模块

git submodule update --init –recursive

这个脚本在px4-autopolite文件夹下的.gitmodules中和.git文件夹的config中

8.  源码中查看git全部版本

git tag

9. //更新至哪个版本

git checkout -b v1.8.2

10.查看当前编译的代码是那个版本

git status

 查看当前编译使用的版本

git branch

11.//上传到板子上(官方给的方式)根据自己板子的适配

make px4_fmu-v2_default upload

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!