关闭

Cleanflight 之 Eclipse编译环境搭建

标签: cleanfligheclipse编译环境
718人阅读 评论(6) 收藏 举报
分类:

前言

先提供我已配置好的Eclipse, 大家只需要下载解压,并可执行(不过前提是电脑上先安装了 JDK 才行)。
下载地址:链接:http://pan.baidu.com/s/1i5CC3rv 密码:qvti
当然,在编译之前,还是需要各位仿照如下后续几步配置编译环境的步骤进行设置,才能进行编译。

准备工作

Cleanflight 开源飞控源码下载地址:https://github.com/cleanflight
Eclipse Standard 下载地址:http://www.eclipse.org/downloads/packages/eclipse-standard-43/keplerr
ARM toolchain 下载地址:https://launchpad.net/gcc-arm-embedded/+download
cygwin 或者 mingw 的安装:类UNIX/Linux 环境,使得make命令能够在windows下执行的环境。

搭建过程

  1. 安装 Eclipse Standard
  2. 启动Eclipse, 打开“Help”->”Install New Software” 菜单。
  3. 点击 “Add”按钮添加一个新的资源地址。填写插件资源名称,以及插件地址URL:
    Eclipse 4.2 (Juno): http://download.eclipse.org/tools/cdt/releases/juno(等待有点久,若无法访问,请离线安装,具体步骤请另行百度)
  4. 选中 “CDT Main Features” 和 “CDT Optional Features”,或者全选,然后点击“Next”按钮。
  5. install C/C++ development tools on Eclipse.
  6. 安装完成后重启Eclispe 验证 CDT是否安装成功,前往 “Help”->”About Eclipse”菜单。 查看Eclipse CDT的icon图标是否在列表中显示。
  7. 安装 ARM toolchain 交叉编译工具链,博主选择安装到了Eclipse安装目录下新建的 msys 目录中
  8. 安装 cygwin 或者 mingw,博主安装的是 cygwin,因为经过测试 cygwin 编译速度快于mingw,不知道为什么。博主选择安装到了Eclipse安装目录下新建的 msys 目录中
  9. 导入 Cleanflight 项目到 Eclipse。点击 File -> Import ,然后选择如下选项进行导入,其他选项全部默认即可:这里写图片描述
  10. 然后选中 导入的项目,点击 Project ->Propertise, 添加 交叉编译工具链 以及 cygwin 的 bin 目录环境变量(注意:目录地址需要根据安装的实际目录进行修改)。如下所示:这里写图片描述
  11. 至此便可以执行编译工作了,但 Cleanflight 支持多个硬件平台,比如Naze,SPRACINGF3等等,如何快速切换编译目标,而不是每次都要修改Makefile文件中的 TARGET 变量呢? 就如博主配置的这样,只要点击工具栏的小铁锤图标,就可以轻松的切换编译目标:
    这里写图片描述
    Makefile文件中切换编译目标的语句如下(默认的是NAZE):
    # The target to build, see VALID_TARGETS below
    TARGET ?= NAZE
  12. 首先你需要确保在Eclispe主界面右上角选择如下图所示的图标,否则左边工具栏不会显示小铁锤图标:这里写图片描述
  13. 点击 Project ->Propertise -> Manage Configurations 如图所示进行添加目标(具体支持哪些目标,目标名是什么,请查看Makefile文件):这里写图片描述
  14. 按照如下图所示进行Make的配置:
    这里写图片描述
  15. 添加多个编译目标,可以重复以上添加步骤进行配置。至此,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
      -然后点击编译,并执行Hello world,大功告成。

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 文件目录即可。

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:12095次
    • 积分:355
    • 等级:
    • 排名:千里之外
    • 原创:24篇
    • 转载:12篇
    • 译文:0篇
    • 评论:7条
    最新评论