zoukankan      html  css  js  c++  java
  • Cleanflight Eclipse 配置

    可以尝试的两个配置文档

    http://blog.csdn.net/guo8113/article/details/50412469

    https://github.com/cleanflight/cleanflight/blob/master/docs/development/Building%20in%20Eclipse.md

    BTW

    Git在这里down就好https://git-scm.com/download/win

    注意CDT也需在eclipse的软件中配置

     

    Cleanflight的默认make文件夹下的tool.mk中GCC版本要求是6.3.1而官网推荐的是5.4.1,并未找到具体的解决办法。直接改变编译文件将版本号修改之后会出现如下的问题。

     

    故不确定是否更改。

    在tool的makefile中更改了第19行,原版本是6.3.1

     

    Malefile是什么?

    一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令

    下载的时候可能会出错,最近不太稳定,多试几次。

    上面的方法并未真正编译成功其中并没有成功生成obj文件。找到一个新的下载地址

    可能是6.3.1的

    https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads

    下载之后确实可用

     

    重新下载获得的信息 build all

     

    注释掉1301行

     

    最终下图表示已经完成编译

     

    以上还是出现问题,并未生成obj

    ELF (文件格式) 编辑

    在计算机科学中,是一种用于二进制文件、可执行文件、目标代码、共享库和核心转储格式文件。

    是UNIX系统实验室(USL)作为应用程序二进制接口(Application Binary Interface,ABI)而开发和发布的,也是Linux的主要可执行文件格式。

    1999年,被86open项目选为x86架构上的类Unix操作系统的二进制文件标准格式,用来取代COFF。因其可扩展性与灵活性,也可应用在其它处理器、计算机系统架构的操作系统上。

    升级GCC后错误内容依旧是

     

    且cygwin确实比mingw在这里快一些

    出现的错误信息是

    Linking STM32F3DISCOVERY

    d:/6 2017-q1-update/bin/../lib/gcc/arm-none-eabi/6.3.1/../../../../arm-none-eabi/bin/ld.exe: obj/main/cleanflight_STM32F3DISCOVERY.elf section `.text' will not fit in region `FLASH'

    d:/6 2017-q1-update/bin/../lib/gcc/arm-none-eabi/6.3.1/../../../../arm-none-eabi/bin/ld.exe: region `FLASH' overflowed by 67270 bytes

    collect2.exe: error: ld returned 1 exit status

    Makefile:1243: recipe for target 'obj/main/cleanflight_STM32F3DISCOVERY.elf' failed

    make[1]: *** [obj/main/cleanflight_STM32F3DISCOVERY.elf] Error 1

    make[1]: Leaving directory 'D:/FCcode/cleanflight'

    make: *** [hex] Error 2

    Makefile:1355: recipe for target 'hex' failed

    这里溢出的有点多吧。

    HEX文件简析

    http://www.forwhat.cn/post-240.html

    不论刷什么固件都有错

    继续找

    recipe for target 'obj/main/cleanflight_STM32F3DISCOVERY.elf' failed

    Mingw和cygwin的不同环境配置

    D:Build Toolsin;C:/Program Files/Java/jre1.8.0_131/bin/server;C:/Program Files/Java/jre1.8.0_131/bin;C:/Program Files/Java/jre1.8.0_131/lib/amd64;C:ProgramDataOracleJavajavapath;F:CTEXexUserDatamiktexin;F:CTEXexMiKTeXmiktexin;F:CTEXexCTeXctexin;F:CTEXexCTeXcctin;F:CTEXexCTeX yin;F:CTEXexGhostscriptgs9.05in;F:CTEXexGSviewgsview;F:CTEXexWinEdt;C:UsersAdministratorAppDataRoaming pm;C:UsersAdministratorAppDataLocalMicrosoftWindowsApps;C:UsersAdministratorDownloadseclipse;D:OpenOCDin;D:6 2017-q1-updatein;D:6 2017-q1-updatearm-none-eabiin;D:Mingwin;D:Mingwmsys1.0in;D:Mingwmingw32in

    D:Build Toolsin;C:/Program Files/Java/jre1.8.0_131/bin/server;C:/Program Files/Java/jre1.8.0_131/bin;C:/Program Files/Java/jre1.8.0_131/lib/amd64;C:ProgramDataOracleJavajavapath;F:CTEXexUserDatamiktexin;F:CTEXexMiKTeXmiktexin;F:CTEXexCTeXctexin;F:CTEXexCTeXcctin;F:CTEXexCTeX yin;F:CTEXexGhostscriptgs9.05in;F:CTEXexGSviewgsview;F:CTEXexWinEdt;C:UsersAdministratorAppDataRoaming pm;C:UsersAdministratorAppDataLocalMicrosoftWindowsApps;C:UsersAdministratorDownloadseclipse;D:OpenOCDin;D:6 2017-q1-updatein;D:6 2017-q1-updatearm-none-eabiin;D:Cygwinrootin;D:Cygwinrootsbin; D:Gitin; D:Gitmingw64in; D:Gitusrin

    前面一堆就别看了,安装CTEX。。。写论文用的、

    此网站上反映了和我类似的问题,值得一看

    https://github.com/cleanflight/cleanflight/issues/1298

    这哥们和我的错误是一模一样的可惜没有answer

     

    https://github.com/cleanflight/cleanflight/issues/2678

    这个更贴切,以后多查GitHub下讨论区吧,受益匪浅。

     

    啊啊啊O(≧口≦)O配置clean之后重编译再也不能编译了。

    头痛不已,重新下一下

     

    这次把子模块下下来看看.

    其实下下来好像没啥用,多了一个git也没有引入项目。但是把debug去掉之后貌似是编译成功了。和这人建议类似

     

    这次编译的结果如下,说明应该就是编译出来的文件过大的原因。

    到这里还没有完

    在两个文件中出现了成堆的error,不明觉厉

     

    按道理这几个东西应该在库里定义好了才对

     

    果不其然,找不到这几个库,当然现在已经算可以编译了,然而这几百个错误标记黄得我尴尬症犯了。

     

    http://help.eclipse.org/kepler/index.jsp?topic=/org.eclipse.cdt.doc.user/tasks/cdt_t_proj_paths.htm

    中写了具体的操作方法,然而我并找不到配置啥,找了包含math.h的directory但就是没啥用。对了那个写配置方法的大神说在windows里我宁愿在cygwin里编也不拽eclipse,看来入坑了呢。这和编译器自身行为有关,由于不影响编译,我就不深究了。

     

  • 相关阅读:
    年轻人的第一个 Spring Boot 应用,太爽了!
    面试问我 Java 逃逸分析,瞬间被秒杀了。。
    Spring Boot 配置文件 bootstrap vs application 到底有什么区别?
    坑爹的 Java 可变参数,把我整得够惨。。
    6月来了,Java还是第一!
    Eclipse 最常用的 10 组快捷键,个个牛逼!
    Spring Cloud Eureka 自我保护机制实战分析
    今天是 Java 诞生日,Java 24 岁了!
    厉害了,Dubbo 正式毕业!
    Spring Boot 2.1.5 正式发布,1.5.x 即将结束使命!
  • 原文地址:https://www.cnblogs.com/chainplain/p/11775398.html
Copyright © 2011-2022 走看看