windows编译ardupilot源码教程

一、下载ArduPilot 源码

源码地址:GitHub - ArduPilot/ardupilot: ArduPlane, ArduCopter, ArduRover, ArduSub source

使用git clone命令拉取飞控代码。

bash 复制代码
 git clone https://github.com/ArduPilot/ardupilot.git

二、安装编译环境

打开后,通过cd命令,转到.\ardupilot\Tools\environment_install目录

使用管理员权限运行powershell

设置执行策略

bash 复制代码
set-executionpolicy remotesigned

执行完当前指令后已经解除安全机制对.ps1类型的脚本文件的约束,此时再去执行.ps1脚本已经没有问题了

输入.\install然后按Tab键切换到install-prereqs-windows.ps1,回车运行。

此时将自动下载并安装MAVProxy、Cygwin x64、ARM GCC 编译器、python等软件。

安装g++:地址

下载后解压,将源码下的bin路径添加到系统环境变量。

三 切换固件

3.1 查看源代码中包含的所有tag

bash 复制代码
git tag

按回车下一行,找到版本后,按 "q" 退出

例如从多旋翼3.6.7 稳定版固件创建分支,分支名为:MyCopter

bash 复制代码
git checkout -b MyCopter Copter-3.6.7

3.3 更新子模块

bash 复制代码
git submodule update --init --recursive

四、编译飞控源码

以下命令在Cygwin64终端下执行。

4.1 配置飞控类型

查看所有支持的飞控类型

bash 复制代码
./waf list_boards

4.2 选择飞控类型

bash 复制代码
./waf configure --board fmuv3

4.3 选择机型

bash 复制代码
如果是编译多旋翼固件,运行下面的命令 
./waf copter
 
如果是编译常规固定翼固件或者垂直起降固定翼固件(二者同一个固件)
./waf plane
 
如果是编译直升机固件
./waf heli
 
如果是编译无人车固件
./waf rover
 
如果是编译潜水艇固件
./waf sub

编译完成。路径为./ardupilot/bulid/fmuv3/bin/arducopter.apj

若编译失败,则清除build再重复上面步骤

bash 复制代码
./waf distclean

五、固件烧写

使用QGC或MissionPlanner地面站选择编译后的固件进行烧写。

相关推荐
codebetter3 小时前
Windows子系统WSL Ubuntu24.04 Docker pull镜像失败
windows·docker
kyle~4 小时前
Windows---动态链接库Dynamic Link Library(.dll)
运维·windows·操作系统·运维开发·开发部署
中游鱼6 小时前
如何序列化和反序列化动态 XmlElement ?
windows·microsoft·c#
我命由我1234511 小时前
Kotlin 数据容器 - List(List 概述、创建 List、List 核心特性、List 元素访问、List 遍历)
java·开发语言·jvm·windows·java-ee·kotlin·list
mCell13 小时前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
dualven_in_csdn14 小时前
electron 使用记录
windows
zz96022615 小时前
Windows Server存储池,虚拟磁盘在系统启动后不自动连接需要手动连接
windows
吳所畏惧21 小时前
NVM踩坑实录:配置了npm的阿里云cdn之后,下载nodejs老版本(如:12.18.4)时,报404异常,下载失败的问题解决
前端·windows·阿里云·npm·node.js·batch命令
leese23321 小时前
FreeMarker模板引擎
windows
love530love1 天前
命令行创建 UV 环境及本地化实战演示—— 基于《Python 多版本与开发环境治理架构设计》的最佳实践
开发语言·人工智能·windows·python·conda·uv