PX4源码分析12:怎样得到某个版本的PX4源码?(本文以v1.10.0为例)

2023-05-16

Get a Specific Release
To get the source code for a specific older release:
参考链接:https://blog.csdn.net/weixin_41869763/article/details/105238014

第一种方法

下载了PX4最新版固件之后,可以选择指定的版本编译。
使用以下命令:

git tag						# 查看可以选择的版本
git checkout v1.10.0    	# 比如此处选择 v1.10.0 版本
make list_config_targets 	# 查看可以选择的固件
make px4_fmu-v3_default 	# 此处选择编译 px4_fmu-v3_default, Pixhawk2 使用

如果之后想要更换成其他版本怎么办呢?比如现在我想使用 v1.10.1 版本,指令如下:

git checkout v1.10.1
git submodule sync --recursive
git submodule update --init --recursive
make px4_fmu-v3_default 

第二种方法(极力推荐):

我下载的是V1.10.0版本的,终端执行命令:.

mkdir -p ~/src
cd ~/src
git clone -b v1.10.0 https://github.com/PX4/Firmware.git 
cd Firmware
git submodule update --init --recursive

这里的mkdir -p是创建目录-p参数是为了当所创建目录存在时,不会报错.之后已经配置过的环境不用重新配置,直接编译:
make px4fmu-v3_default
验证一下下载的版本是否对应:

输入:git describe --always --tags
输出:v1.10.0	

第三种方法:

第1步:Clone the Firmware repo and navigate into Firmware directory:

输入下面这两个命令,下载最新的源码,并进入到Firmware文件夹

git clone https://github.com/PX4/Firmware.git
cd Firmware

第2步:List all releases (tags)

输入下面这个命令可以查看列表里有哪些版本,找到自己想要的版本,记住版本号,输入"Q"关闭

git tag -l

在这里插入图片描述

第3步:Checkout code for particular tag

切换tag,也就是下载自己想要的代码版本。
输入下面这个命令,通过创建分支,并保留在此状态下所做的提交,因此中间要添加-b参数来实现

git checkout -b v1.10.0

在这里插入图片描述
此刻,版本标签切换完成。

第4步:下载子模块

Many build problems are caused by either mismatching submodules or an incompletely cleaned-up build environment. Updating the submodules and doing a distclean can fix these kinds of errors:

git submodule update --recursive
make distclean

当使用git clone下来的工程中带有submodule时,初始的时候,submodule的内容并不会自动下载下来的,此时,只需执行如下命令:
git submodule update --init --recursive
即可将子模块内容下载下来后工程才不会缺少相应的文件。
更新好了之后,你就可以对此版本进行为所欲为了!!!

第5步:验证一下版本是否切换成功:

输入:git describe --always --tags
输出:v1.10.0							

在这里插入图片描述
说明版本切换成功!!!
下面我们就开始为所欲为吧!!!哈哈哈!!!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PX4源码分析12:怎样得到某个版本的PX4源码?(本文以v1.10.0为例) 的相关文章

  • 【ROS】源码分析-消息订阅与发布

    说明 本文通过NodeHandle subscribe和Publication publish 源码作为入口 xff0c 来分析PubNode SubNode之间是网络连接是如何建立的 xff0c 消息是如何发布的 xff0c topic队
  • 无人机仿真—PX4编译,gazebo仿真及简单off board控制模式下无人机起飞

    无人机仿真 PX4编译 xff0c gazebo仿真及简单off board控制模式下无人机起飞 前言 在上篇记录中 xff0c 已经对整体的PX4仿真环境有了一定的了解 xff0c 现如今就要开始对无人机进行起飞等仿真环境工作 xff0c
  • PX4 -- EKF2

    文章目录 EKF2参数高度估计Range Finder滤波 单变量更新单变量更新对多变量的影响 EKF2 参数 EKF2 中有一类 GATE 参数 当测量值在 VAR GATE 范围内才会更新值 高度估计 四种高度控制方法 xff1a 气压
  • PX4模块设计之五:自定义MAVLink消息

    PX4模块设计之五 xff1a 自定义MAVLink消息 1 MAVLink Dialects1 1 PX4 Dialects1 2 Paprazzi Dialects1 3 MAVLink XML File Format 2 添加自定义M
  • PX4模块设计之十七:ModuleBase模块

    PX4模块设计之十七 xff1a ModuleBase模块 1 ModuleBase模块介绍2 ModuleBase类介绍3 ModuleBase类功能介绍3 1 模块入口3 2 模块启动3 3 模块停止3 4 状态查询3 5 任务回调3
  • PX4模块设计之三十:Hysteresis类

    PX4模块设计之三十 xff1a Hysteresis类 1 Hysteresis类简介2 Hysteresis类成员变量介绍3 Hysteresis类迟滞逻辑4 Hysteresis类重要方法4 1 Hysteresis bool ini
  • PX4模块设计之三十九:Commander模块

    PX4模块设计之三十九 xff1a Commander模块 1 Commander模块简介2 模块入口函数2 1 主入口commander main2 2 自定义子命令custom command 3 Commander模块重要函数3 1
  • PX4软件在环仿真注意点

    注 xff1a 最新内容参考PX4 user guide 点击此处 PX4下载指定版本代码和刷固件的三种方式 点击此处 PX4sitl固件编译方法 点击此处 PX4开发指南 点击此处 PX4无人机仿真 Gazebo 点击此处 px4仿真 知
  • PX4飞控的PPM接收机

    xff08 一 xff09 原理图 xff1a PX4飞控的PPM输入捕获由协处理器完成 xff0c 接在A8引脚 xff0c 对应Timer1的通道1 xff08 二 xff09 PPM协议 xff1a PPM的每一帧数据间隔为20ms
  • PX4项目学习::(七)飞控栈:commander

    PX4的飞行控制程序通过模块来实现 xff0c 与飞控相关的模块主要有commander xff0c navigator xff0c pos control xff0c att control这几个 xff0c 分别可以在src modul
  • PX4项目学习::(五)模块代码启动流程

    54条消息 PX4 模块代码启动流程 zhao23333的博客 CSDN博客
  • mybatis 自动化处理 mysql 的json类型字段 终极方案

    文章目录 mybatis 自动化处理 mysql 的json类型字段 终极方案 why json 简介 mysql 建表 json 字段 添加1条json 数据 对应的java对象 JsonEntity mybatis 不使用 通用mapp
  • 阿里云OSS请求文件跨域问题Access-Control-Allow-Origin

    跨域问题网上很多解决方案提示到这里配置但是不生效 一定要勾选Vary Origin这个选项 请求的时候浏览器记得请求在控制台要清理缓存
  • HashMap底层源码分析

    HashMap HashMap 是一个散列表 它存储的内容是键值对 key value 映射 HashMap是非线程安全的 实现了 Map 接口 根据键的 HashCode 值存储数据 具有很快的访问速度 最多允许一条记录的键为 null
  • 【源码分析】zeebe actor模型源码解读

    zeebe actor 模型 如果有阅读过zeebe 源码的朋友一定能够经常看到actor run 之类的语法 那么这篇文章就围绕actor run 方法 说说zeebe actor 的模型 环境 zeebe release 8 1 14
  • AndroidO audio系统之AudioPolicyService分析(三)

    1 AudioPolicyService基础 AudioPolicy在Android系统中主要负责Audio 策略 相关的问题 它和AudioFlinger一起组成了Android Audio系统的两个服务 一个负责管理audio的 路由
  • 汇编 - ORG指令详解

    ORG指令 ORG是Origin的缩写 起始地址 源 在汇编语言源程序的开始通常都用一条ORG伪指令来实现规定程序的起始地址 如果不用ORG规定则汇编得到的目标程序将从0000H开始 例如 ORG 2000H START MOV AX 00
  • Log4j2注入漏洞万字剖析-汇总收藏版(攻击步骤、漏洞原理、2.15.0-RC1绕过原理以及2.15.0、2.16.0修复原理)

    系列文章 2 15 0之前版漏洞相关文章 Log4j2注入漏洞 CVE 2021 44228 万字深度剖析 一 开篇与基础知识 Log4j2注入漏洞 CVE 2021 44228 万字深度剖析 二 漏洞原理 Log4j2注入漏洞 CVE 2
  • 飞行姿态解算(三)

    继之前研究了一些飞行姿态理论方面的问题后 又找到了之前很流行的一段外国大神写的代码 来分析分析 第二篇文章的最后 讲到了文章中的算法在实际使用中有重大缺陷 大家都知道 分析算法理论的时候很多情况下我们没有考虑太多外界干扰的情况 原因是很多情
  • GTest源码剖析(四)——TEST_P宏

    GTest源码剖析 TEST P宏 GTest源码剖析TEST P宏 TEST P宏用法 TestWithParam 类 1 TestWithParam 类定义 2 WithParamInterface 模版类定义 INSTANTIATE

随机推荐