Jerry

踏遍千山万水,看尽世界风采!

Cleanflight 之 Eclipse 编译环境搭建(Windows 平台)

准备工作

官网下载地址:
Cleanflight 开源飞控源码下载地址:https://github.com/cleanflight
JDK 下载地址:http://www.Oracle.com/technetwork/Java/javase/downloads/index.html
CDT for Eclipse luna下载地址:http://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/lunasr2
ARM toolchain 下载地址:https://launchpad.net/gcc-arm-embedded/+download
cygwin 下载地址:http://www.cygwin.com/
(cygwin 或者 mingw :类UNIX/Linux 环境,使得 make 命令能够在 windows 下执行的环境。)

百度云下载地址:
win7 32bit 下载地址:链接:http://pan.baidu.com/s/1pKHCcJ5 密码:w8dq
win7 64bit 下载地址:链接:http://pan.baidu.com/s/1dEJsvxJ 密码:lsr5

搭建过程

  1. 安装 JDK (安装教程:http://blog.csdn.net/u011004037/article/details/42366751)
  2. 安装 CDT for Eclipse luna, 直接解压 eclipse-cpp-luna-SR2-win32-x86_64.zip 便能直接运行带有 CDT 的 Eclipse。
  3. 安装 ARM toolchain 交叉编译工具链,博主选择安装到了 Eclipse 安装目录下新建的 msys 目录中。
  4. 安装 cygwin 或者 mingw,博主选择 cygwin,因为经过测试 cygwin 编译速度快于 mingw。博主选择安装到了 Eclipse 安装目录下新建的 msys 目录中。注意:安装 cygwin 时默认不安装 make.exe,这将导致最终配置好编译环境来编译项目时出现如下问题:
    这里写图片描述
    所以在安装的过程中,需要按照如下博文来操作:
    http://blog.csdn.net/soaringlee_fighting/article/details/68935470

  5. 导入 Cleanflight 项目到 Eclipse。点击 File -> Import ,然后选择如下选项进行导入,其他选项全部默认即可:
    这里写图片描述

  6. 然后选中导入的项目,点击 Project ->Propertise,添加交叉编译工具链的 bin 目录以及 cygwin 的 bin 目录环境变量(注意:目录地址需要根据安装的实际目录进行修改)。如下所示:
    这里写图片描述

  7. 至此便可以执行编译工作了,但 Cleanflight 支持多个硬件平台,比如 Naze,SPRACINGF3 等等,如何快速切换编译目标,而不是每次都要修改 Makefile 文件中的 TARGET 变量呢? 就如博主配置的这样,只要点击工具栏的小铁锤图标,就可以轻松的切换编译目标:
    这里写图片描述
    Makefile 文件中切换编译目标的语句如下(默认的是 NAZE):
    //The target to build, see VALID_TARGETS below
    TARGET ?= NAZE

  8. 首先你需要确保在 Eclispe 主界面右上角选择如下图所示的图标,否则左边工具栏不会显示小铁锤图标:
    这里写图片描述

  9. 点击 Project ->Propertise -> Manage Configurations 如图所示进行添加目标(具体支持哪些目标,目标名是什么,请查看Makefile 文件):
    这里写图片描述

  10. 按照如下图所示进行 Make 的配置:
    这里写图片描述

  11. 添加多个编译目标,可以重复以上添加步骤进行配置。至此,Cleanflight 之 Eclipse 编译环境的搭建便已初步完成。


另外,每次编译时,都会报告 Git 命令无法找到,那是因为在 Makefile 文件中,每次编译都调用了 Git 命令来获取当前项目的历史最新版本号的前6位。 如下所示:
REVISION := $(shell git log -1 –format=”%h”)
还记得前面在添加环境变量的时候,并没有添加 Git 的 bin 目录路径,所以只需要在添加交叉编译工具链的环境变量时,也一并添加安装的 Git 的 bin 目录路径,便不会再报错了。(Git 的安装请自行百度或者 Google)

其他问题

  1. 如何在该平台上能够生成 .exe 程序并执行
    答:配置如下

    • 创建项目
      这里写图片描述
      这里写图片描述
    • 然后添加main.c文件,内容如下:
      #include “stdio.h”
      int main(int argc, char *argv)
      {
      printf(“Hello world.\n”);
      return 0;
      }
    • 在该工程中的编译设置的环境变量中添加 cygwin 的 bin 目录的值(参照前面配置环境变量的操作)
      我的安装目录为:C:\Eclispe for CDT\msys\cygwin\bin
  2. 控制台没有任何输出如何解决?
    有可能 Eclispe 下方的 Consle 控制台没有任何输出,此时若直接点击生成的 Hello wrold.exe ,提示如下信息:
    这里写图片描述
    解决该错误提示的方法是:拷贝 cygwin 目录下的 cygwin1.dll 到 C:\Windows\System32 目录下即可。

  3. 点击运行按钮,提示 Launch failed,Binary not found,如何解决?
    答:首先工程区域选中目标工程,其次点击 Run -> Run Configurations, 仿照如下设置这里写图片描述
    在 C/C++ Application 中新增一个运行实体,然后填写生成的 exe 文件目录即可。

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/QQ1452008/article/details/52382334
个人分类: 四轴飞行器(UAV)
上一篇Linux Makefile 中的陷阱
下一篇uIP学习的参考资料
想对作者说点什么? 我来说一句

cleanflight1.2.4汉化调参软件

2018年01月12日 5.78MB 下载

cleanflight_SPRACINGF3固件

2016年03月23日 119KB 下载

cleanflight 国外飞控源码

2016年04月19日 4.21MB 下载

没有更多推荐了,返回首页

关闭
关闭