您的位置:首页 > 编程语言 > Java开发

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

2016-08-31 10:21 429 查看

准备工作

官网下载地址:

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

搭建过程

安装 JDK (安装教程:http://blog.csdn.net/u011004037/article/details/42366751)

安装 CDT for Eclipse luna, 直接解压 eclipse-cpp-luna-SR2-win32-x86_64.zip 便能直接运行带有 CDT 的 Eclipse。

安装 ARM toolchain 交叉编译工具链,博主选择安装到了 Eclipse 安装目录下新建的 msys 目录中。

安装 cygwin 或者 mingw,博主选择 cygwin,因为经过测试 cygwin 编译速度快于 mingw。博主选择安装到了 Eclipse 安装目录下新建的 msys 目录中。注意:安装 cygwin 时默认不安装 make.exe,这将导致最终配置好编译环境来编译项目时出现如下问题:



所以在安装的过程中,需要按照如下博文来操作:

http://blog.csdn.net/soaringlee_fighting/article/details/68935470

导入 Cleanflight 项目到 Eclipse。点击 File -> Import ,然后选择如下选项进行导入,其他选项全部默认即可:



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



至此便可以执行编译工作了,但 Cleanflight 支持多个硬件平台,比如 Naze,SPRACINGF3 等等,如何快速切换编译目标,而不是每次都要修改 Makefile 文件中的 TARGET 变量呢? 就如博主配置的这样,只要点击工具栏的小铁锤图标,就可以轻松的切换编译目标:



Makefile 文件中切换编译目标的语句如下(默认的是 NAZE):

//The target to build, see VALID_TARGETS below

TARGET ?= NAZE

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



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



按照如下图所示进行 Make 的配置:



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

另外,每次编译时,都会报告 Git 命令无法找到,那是因为在 Makefile 文件中,每次编译都调用了 Git 命令来获取当前项目的历史最新版本号的前6位。 如下所示:

REVISION := $(shell git log -1 –format=”%h”)

还记得前面在添加环境变量的时候,并没有添加 Git 的 bin 目录路径,所以只需要在添加交叉编译工具链的环境变量时,也一并添加安装的 Git 的 bin 目录路径,便不会再报错了。(Git 的安装请自行百度或者 Google)

其他问题

如何在该平台上能够生成 .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

控制台没有任何输出如何解决?

有可能 Eclispe 下方的 Consle 控制台没有任何输出,此时若直接点击生成的 Hello wrold.exe ,提示如下信息:



解决该错误提示的方法是:拷贝 cygwin 目录下的 cygwin1.dll 到 C:\Windows\System32 目录下即可。

点击运行按钮,提示 Launch failed,Binary not found,如何解决?

答:首先工程区域选中目标工程,其次点击 Run -> Run Configurations, 仿照如下设置


在 C/C++ Application 中新增一个运行实体,然后填写生成的 exe 文件目录即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐