PX4-Autopilot下载与编译

文章目录

  • 1 Git clone 代码
  • 2 下载子模块
  • 3 编译
  • 4 可能遇到的问题
  • 参考

1 Git clone 代码

Github Repository 链接:PX4-Autopilot
查看现有版本:
PX4-Autopilot下载与编译_第1张图片
在终端用命令下载,-b表示branch

git clone -b v1.14.0 https://github.com/PX4/PX4-Autopilot.git

注意:不要直接下载zip或者tar.gz压缩包,里面没有git文件,里面有些内容是缺失的,所以输入make px4_fmu-v6c_default会报错:

make px4_fmu-v6c_default
Makefile:39: *** YOU HAVE TO USE GIT TO DOWNLOAD THIS REPOSITORY. ABORTING..  Stop.

2 下载子模块

编译前需要联网下载子模块

git submodule update --init --recursive

会在Cloning into '/home/scarlett/Debs/1.14.0/PX4-Autopilot/platforms/nuttx/NuttX/nuttx'...这里卡的比较久,不要着急Ctrl+C

PX4-Autopilot下载与编译_第2张图片

下载完成:
PX4-Autopilot下载与编译_第3张图片

3 编译

然后输入make命令,即可顺利编译完成:

make px4_fmu-v6c_default # 我这里的版本用的是px4_fmu-v6c

4 可能遇到的问题

如果第3步和第2步的顺序反了,那么在执行git submodule update --init --recursive时可能会出现如下报错:

fatal: destination path '/home/scarlett/Debs/1.14.0/PX4-Autopilot/platforms/nuttx/NuttX/nuttx' already exists and is not an empty directory.
fatal: clone of 'https://github.com/PX4/NuttX.git' into submodule path '/home/scarlett/Debs/1.14.0/PX4-Autopilot/platforms/nuttx/NuttX/nuttx' failed
Failed to clone 'platforms/nuttx/NuttX/nuttx' a second time, aborting

解决办法是输入make distclean再重新输入git submodule update --init --recursive

参考

Make stuck on checking submodule Nuttx

你可能感兴趣的:(px4,嵌入式硬件,linux,c++)