Chinaunix首页 | 论坛 | 博客
  • 博客访问: 24766
  • 博文数量: 5
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 10
  • 用 户 组: 普通用户
  • 注册时间: 2015-11-16 01:15
文章分类
文章存档

2017年(3)

2015年(2)

我的朋友
最近访客

分类: 嵌入式

2017-10-06 13:34:43

原文地址:Makefile编译PX4源码 作者:cczy


转载

1 前言

??官方开源的Pixhawk固件自2015年10月6号起,删除了makefile文件夹,按照在工具链中的控制台命令行编译,再按照原来的编译步骤去编译时就会出现问题了,因为固件已经由make编译系统转到了cmake编译系统了。

2 make编译

??使用make编译系统的编译步骤:

  1. 安装”px4_toolchain_installer_v14_win.exe”
  2. 运行 “PX4 Software Download”
  3. git submodule init
  4. git submodule update
  5. make distclean
  6. make archives
  7. make px4fmu-v2_default

这是2015-10-10的版本,发现已经没有了makefile文件夹:

2015-10-10

3 获取make编译系统的Firmware版本

3.1 方式一

Tag

??这些版本都是用make编译系统。想要下载哪个就点击进去:

V1.01

??需要注意的是,下载当前版本要下载.zip(如果下载下来后,编译过程中出现了fatal: Not a git repository (or any of the parent directories)问题,请见这篇文章:http://blog.csdn.net/freeape/article/details/47858527):
zip

3.2 方式二(推荐)

??通过git版本控制来切换分支得到想要的版本。
??在git中,tag就是一个只读的branch,一般为每一个可发布的里程碑版本打一个tag。如在方式一中的tag,v1.0.1、v1.0.0rc12、v1.0.0rc11等。比如想要得到v1.0.1这个分支的代码,可以这样做:

  • 先将master分支clone到本地
    • git clone
  • 在本地的git bash中切换分支:git checkout tag_name
    • git checkout v1.0.1
  • 然后再更新本地仓库,再编译
    • git submodule init
    • git submodule update
  • 在工具链中的console中编译
    • make distclean
    • make archives
    • make px4fmu-v2_default

4 cmake编译

??使用cmake编译系统的编译步骤:(首先是要将最新的固件clone到本地的)

  1. git submodule init
  2. git submodule update --recursive
    1. 如果这一步失败了,则make distclean或者git clean -dfx(注意:这将会删除没有在Git版本控制下的所有文件)
    2. 重新来遍
  3. make px4fmu-v2_default
阅读(1260) | 评论(0) | 转发(0) |
0

上一篇:APM源码学习笔记

下一篇:PX4 源码学习日志

给主人留下些什么吧!~~