注意:Eclipse 只是一个代码编写工具,它并不能读取 makefile 里面的一些配置,甚至它会读取到 cygwin 下同名称的头文件。
针对该现象引起的报错,我们建议用户在使用该 IDE 时,直接将 Problems 栏目关掉,因为该提示并不准确,我们主要关注的信息应该为 Console 栏目下的输出。(第一条 Console 报错最重要!)
我们以ESP8266_NONOS_SDK-v3.0.0为例 (使用乐鑫原厂固件,需要将 examples/IoT_Demo 下的文件拷贝到工程目录的顶层文件。)
下载后解压到合适的目录下,我们以 ESP8266_NONOS_SDK-3.0.0 为例:
ESP8266_NONOS_SDK 采用了 SDK 和工程文件夹分离的方式,所以我们需要复制一个 DEMO 到 SDK 的顶层目录。
- 复制 IOT_Demo 到 SDK 顶层目录
- 将 ESP8266_NONOS_SDK/third_party/makefile 重命名为 makefile.bak ,以防止编译时报错,虽然不影响编译但是强迫症患者不能忍啊。。。
接下来,我们启动 ESP_IDE,将项目导入 Eclipse
- 选择 File→Import
- 点开 C/C++ 分支,并选中Existing Code as Makefile Project
- 去除 C++ 支持,选中 Gross GCC
点击Browser,选中 ESP8266_NONOS_SDK-3.0.0 所在的目录
- 点击 Finish 完成 ESP8266_NONOS_SDK-3.0.0 的导入
如下图:
- 鼠标选中项目名称,点击右键菜单中的 Properties
选择 C/C++ Build → Build command 中添加编译规则,用户可以根据实际情况来更改规则 (
make COMPILE=gcc BOOT=none APP=0 SPI_SPEED=40 SPI_MODE=DIO SPI_SIZE_MAP=2
)在 C/C++ Build → Build directory 选择编译的工程路径
- 点击 Apply ,ok, 完成 ESP8266_NONOS_SDK-3.0.0 的属性设置
鼠标选中项目名称,点击右键出现菜单:
Build Project :编译项目
Clean Project:清理项目
选中编译项目,控制台输出如下图即编译成功
注意:Build Project 前最好先 Clean Project,以防止出错
下载后解压到合适的目录下,我们以 ESP8266_RTOS_SDK-3.0.0 为例:
接下来,我们启动 ESP_IDE,将项目导入 Eclipse
- 选择 File→Import
- 点开 C/C++ 分支,并选中Existing Code as Makefile Project
- 去除 C++ 支持,选中 Gross GCC
点击Browser,选中 ESP8266_RTOS_SDK
- 点击 Finish 完成 ESP8266_RTOS_SDK-3.0.0 的导入
完成后如下图:
- 鼠标选中项目名称,点击右键出现菜单选择 Properties 2. 选择 C/C++ Build → Build directory 选择工程路径
示例:ESP8266_RTOS\examples\get-started/project_template
- 添加 IDF PATH 到工程中,C/C++ Build → Environment 对话框中新添一个环境变量 name 命名为 IDF_PATH, value 中填入 ESP8266_RTOS_SDK 的路径
点击Apply, ok, 完成 ESP8266_RTOS_SDK 的属性设置
- 点击项目名称,右键菜单中选择Make Targets → Create
- 在弹出的对话框中取消勾选 Same as the target name 与 User builder settings,在 Target name 输入规则名字 (menuconfig), Build command 中输入mintty.exe -e make menuconfig
- 执行上面刚刚创建的 Make Targets,在右键菜单 Make Targets → Build, 在弹出的对话框,选择 menuconfig, 点击 Build
一切配置正确后,可以看到系统跳出一个 menuconfig 窗口,我们可以在这里构建 menuconfig
鼠标选中 ESP8266_RTOS_SDK-3.0.0,点击右键出现菜单:
Build Project :编译项目
Clean Project:清理项目
选中编译项目,控制台输出如下图即编译成功
注意:Build Project 前最好先 Clean Project,以防止出错
下载解压 esp-idf 到合适的目录下,我们以esp_idf-V3.2为例
接下来,我们启动 ESP_IDE,将项目导入 Eclipse
- 选择 File→Import
点开 C/C++ 分支,并选中Existing Code as Makefile Project
去除 C++ 支持,选中 Gross GCC
点击Browser,选中 ESP8266_RTOS_SDK
- 点击 Finish 完成 esp-idf 的导入
完成后如下图:
项目属性配置,鼠标选中 esp-idf,右键菜单选择 Properties → C/C++ Build 在 Build directory 选择需要编译的工程路径 示例:esp-idf/examples/get-started/hello_world
添加 IDF 路径,在 C/C++ Build → Environment 中点击 Add
弹出的对话框 name 输入 IDF_PATH,Value 输入 esp-idf 的路径
配置好之后点击Apply,Ok
我们下载esp-adf,解压到合适路径
接下来我们将 esp-adf 导入到 eclipse
- 选择 File→Import
- 点开 C/C++ 分支,并选中Existing Code as Makefile Project
- 去除 C++ 支持,选中 Gross GCC
点击Browser,选中 esp-idf 所在的目录
- 点击 Finish 完成 esp-adf 的导入
如下图:
右键项目→Properties , 单击 C/C++ Build,修改如下图
添加 ADF PATH 到 eclipse 中,右键项目→Properties → C/C++ Build → Environment 对话框中新添一个环境变量 name 命名为 ADF_PATH, value 中填入 esp-adf 的路径
此时,已经具备了编译的基础,下面我们配置 make menuconfig 这条指令
首先新建 target,右键项目名称→Make targets , 选择 Creat
给该 Target 新建一个名称
在弹出的页面中取消勾选 Use builder setting ,
取消勾选 Same as the target name 并清空 Make target 的内容
在下面 command 中输入 mintty.exe -e make menuconfig
点击 OK 保存
选中项目,按下快捷键 Shift + F9,弹出刚才新建的一个 Target
鼠标选中需要编译的 Target, 点击 Build 即可实现在 Eclipse 中下载和配置 esp_adf
首次使用请先执行 make menuconfig
鼠标选中项目名称,点击右键出现菜单:
Build Project :编译项目
Clean Project:清理项目
选中编译项目,控制台输出如下图即编译成功
注意:Build Project 前最好先 Clean Project,以防止出错
http://wiki.ai-thinker.com/ai_ide_use