zoukankan      html  css  js  c++  java
  • 在windows 下使用eclipse进行编译和烧写

    eclipse IDE是一款开源的前端编程软件,它提供了编写,编译和调试ESP-IDF项目的图形集成开发环境。

    首先在https://www.obeo.fr/en/eclipse-download?INSTALLER-WIN64中选择需要的对应位数的eclipse。

    然后在http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html下载eclipse运行所需的java环境。

    在安装是选择

    点击安装jdk环境和eclipse软件。打开eclipse结果如下

    STEP1;

    设置Eclipse

    一旦新的Eclipse安装启动,请按照下列步骤操作:

    进口新工程

    • Eclipse使用ESP-IDF中的Makefile支持。这意味着您需要先创建ESP-IDF项目。您可以使用github中的idf-template项目,或者在esp-idf examples子目录中打开一个示例。(这里选择上篇文章的helloworld)
    • 一旦Eclipse运行,选择文件 - >导入...
       
    • 在弹出的对话框中,选择“C / C ++” - >“现有代码作为Makefile项目”,然后单击“下一步”。
        
    • 在下一页上,输入“现有代码位置”作为您的IDF项目的目录。不要指定ESP-IDF目录本身的路径(稍后)。您指定的目录应包含名为“Makefile”(项目Makefile)的文件。
    • 在同一页面上的“用于索引器设置的工具链”下,取消选中“仅显示支持该平台的可用工具链”。
    • 在出现的扩展列表中,选择“Cygwin GCC”。然后单击完成。
       

      此时打开点击可以看到新项目将显示在项目资源管理器下了。

      STEP2;

      项目属性

      右键单击该项目,然后从上下文菜单中选择“属性”

    • 点击“C / C ++ Build”属性页面(顶级):

      • 取消选中“使用默认构建命令”,然后在自定义构建命令中输入
        python ${IDF_PATH}/tools/windows/eclipse_make.py
    • 单击“C / C ++构建”下的“Environment”属性页面:

      • 点击“Add...”,输入名称BATCH_BUILD和值1
      • 再次点击“Add...”,输入名称IDF_PATH。该值应为安装ESP-PATH的完整路径。应使用非反斜杠(即C:/ Users / MyUser / Development / esp-idf)的转斜斜杠来指定IDF_PATH目录。
      • 编辑PATH环境变量。删除现有值并替换为(3个bin路径)
        C:UsersliDesktopESP32msys32usrin;C:UsersliDesktopESP32msys32mingw32in;C:UsersliDesktopESP32msys32optxtensa-esp32-elfin
        

          

    •  点击“C/C++ General” -> “Preprocessor Include Paths, Macros, etc.” 完成如下操作,替换${COMMAND}行开头的文本xtensa-esp32-elf-gcc

       

    •  点击勾选“CDT GCC Build Output Parser”,并将完整的编译器命令模式改为xtensa-esp32-elf-(g?cc)|([gc]++)|(clang)

    • 选择appply and close,此时看到工程已经不报错了。
    • 在Eclipse之外,打开一个命令行提示符。导航到项目目录,并运行以配置项目的esp-idf设置。此步骤目前必须在Eclipse之外运行。make menuconfig,和上篇文章的编译操作一样。
    • 点击build进行编译后,

    • 选择创建一个烧写flash的文件
    •  

    • 选中project->Build Target->build对flash进行编译,将程序烧写到开发板中。

    • 程序烧写完成,之后按照上篇文章的验证方法对整个烧写结果进行验证。
    • 技术细节

      • xtensa-esp32-elf-gcc交叉编译器不是 Cygwin工具链,尽管我们告诉Eclipse它是一个。这是因为msys2使用Cygwin并支持Cygwin路径(类型/c/blah而不是c:/blahc:\blah)。特别地,xtensa-esp32-elf-gcc报告给Eclipse的“内置编译器设置”功能,其内置的include目录都在/usr/其中,这是Eclipse否则无法解析的Unix / Cygwin样式路径。通过告诉Eclipse编译器是Cygwin,它使用该cygpath实用程序在内部解析这些路径
      • 解析从esp-idf输出时也会出现同样的问题。Eclipse解析此输出以查找头目录,但无法解析表单的include目录,/c/blah而不使用cygpathEclipse Build Output Parser使用一个启发式来确定是否应该调用它cygpath,但是由于目前未知的原因,esp-idf配置不会触发它。因此,eclipse_make.py包装器脚本用于调用make然后用于cygpath处理Eclipse的输出。
  • 相关阅读:
    Docker化高可用redis集群
    机器学习理论研究方法探讨
    (转载)iOS系统Crash文件分析方法
    ios 学习总结之动画(转)
    (转)iOS sqlite :truncate/delete/drop区分
    (转载)自定义 setDateFormat 显示格式
    (转载)IOS中UIScrollView的属性和委托方法
    vue 实现分页加载数据
    深入理解JQuery插件开发
    博客迁移到GitCafe
  • 原文地址:https://www.cnblogs.com/noticeable/p/7429625.html
Copyright © 2011-2022 走看看