登录
加入联盟
找回密码
航空人生
新一代连飞客户端下载
空管人生
中国航空运动协会推荐
WEFLY
模拟飞行玩家聊天工具
门户
文章
商城
二手市场
外包服务
模飞软件
硬件设备
飞行体验
学院
云课堂
问答
资料下载
论坛
模拟飞行
低空飞行
太空探索
航圈
资源
素材
下载
企业
无人机论坛
»
论坛
›
无人机DIY专区
›
飞控开发区
›
APM飞控
›
[入门教程] ArduPilot 源码极速下载手册
返回列表
发新帖
查看:
834
|
回复:
0
[入门教程] ArduPilot 源码极速下载手册
[复制链接]
ofuzlj
ofuzlj
当前离线
积分
1596
窥视卡
雷达卡
46
主题
796
帖子
1596
积分
金牌飞友
金牌飞友, 积分 1596, 距离下一级还需 1404 积分
金牌飞友, 积分 1596, 距离下一级还需 1404 积分
积分
1596
飞币
798
注册时间
2017-8-12
发消息
发表于 2022-10-27 21:13:22
|
显示全部楼层
|
阅读模式
本教程由阿木论坛用户 chasing 发布,可移步论坛查看原文。
开篇先给出极速下载地址和方法:
提示:gitee上的代码我已经取消同步到github了(同步到2020-4-2日),代码方便大家下载,学习,交流。但是**请不要修改上传
(NO git push!)
。
码云地址:
https://gitee.com/gchasing/ardupilot.git
使用方法:在terminal中,直接
git clone <a href=&#34;https://gitee.com/gchasing/ardupilot.git&#34; target=&#34;_blank&#34;>https://gitee.com/gchasing/ardupilot.git</a>
git submodule update --init --recursive即可下载完整代码,整个过程除有两个地方(代码量极小)从 github 上走之外,均已经搬家到 gitee 了。预计 10 分钟之内可以完成。
下面给出搬运过程,一共搬运了13个代码仓库!
首先将 ArduPilot 的代码 clone 到国内 gitee 上,这部分知识请自行百度,在此不再赘述。然后 git clone 的代码速度就变成了下图这样。杠杠的!
但是 APM 的代码还没有结束,此时下载下来的代码由于缺少子模块还不能正常编译 upload。正常情况下我们还需要执行 git submodule update --init --recursive 进行子模块的更新。但是这部分更新仍然走 github,速度更是慢的出奇。因此我们继续深挖,势必将速度提升到最大。根据文末的补充知识可知,子模块放在 .gitmodules 中,如下图所示 gedit .gitmodules
所以我们将 github 网址替换到国内 gitee 上,具体为在 gitee 账号上新建仓库,同步一下网址即可。然后执行如下
git指令
将修改后的 gitmodules 上传到 git 仓库。
git add .
git commit -m &#34;revise&#34;
git push然后,需要注意的是,在克隆项目后,默认子模块目录下无任何内容。需要在项目根目录执行如下命令完成子模块的下载:
git submodule init
git submodule update[color=rgba(0, 0, 0, 0.8)] 此时,可以看到 submodule 已经从 gitee 上下载了,速度快了很多。但是还没有结束,--recursive 为递归更新子模块命令,所以下面还有坑!(姑且称为二级子模块,三级子模块)。
ArduPilot 代码中所有 submodule 代码均放置在 module 文件夹下。打开 modules 文件夹,发现子文件夹中仍然存在二级子模块,仍然需要更新,分别位于 libcanard,mavlink,uavcan 中,如下图所示。
此时注意:修改的为子模块中的 submodule,也就是二级子模块。会出现下图的情况,需要
git checkout master
然后再进行 git push 提交。
随后跳转到主目录下,再次进行 push,如下图所示。(
push 两遍
)
其余两个子模块同理完成即可。其中 git 的顺序不能错。否则请检查是否 push 成功。
此时进行[backcolor=rgba(0, 0, 0, 0.05)][size=0.85em] git submodule update --init --recursive 更新,发现仍然有
三级子模块
从 github 上进行下载。速度较慢,但是总体速度已经快很多了。如下图所示。
作为一个追求完美的人,绝不在这个地方掉链子。所以我们继续深挖。
根据上图的提示,很容易找到对应的 gitmodule 文件,同理进行修改。修改后如图所示
注:三级子模块修改存在问题,待后续解决。提供源代码中并未进行修改,仍然走github。代码量较小。
文末备注知识:
git submodule update --init --recursive有时子模块的项目维护地址发生了变化,或者需要替换子模块,就需要删除原有的子模块。
删除子模块较复杂,步骤如下:
rm -rf 子模块目录 删除子模块目录及源码
vi .gitmodules 删除项目目录下.gitmodules文件中子模块相关条目
vi .git/config 删除配置项中子模块相关条目
rm .git/module/* 删除模块下的子模块目录,每个子模块对应一个目录,注意只删除对应的子模块目录即可
CSDN 原帖链接:
https://blog.csdn.net/qq_15390133/article/details/105280801
手册
,
下载
,
极速
,
源码
相关帖子
•
在哪些网站下载纸模图纸?
•
大疆最刺激的玩具来啦!高空穿梭玩跳楼,极速飞行140km/h
•
使用QGIS3从OpenStreetMap下载矢量数据
•
如何编译ardupilot自带的源码
•
Ardupilot 源码国内下载搬运点和实现过程
•
PX4源码分析5_PX4启动流程
•
QGIS中的OpenStreet矢量下载插件QuickOSM
•
Pixhawk飞控源码目录结构及编译流程分析
•
奥维地图如何下载路网
•
【无人机PIXHAWK4飞控二次开发系列】第三讲第二节飞控界面以及固件下载传感器校准
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
加入联盟
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表