littlebot
Published on 2025-04-14 / 0 Visits
0

【源码】基于C语言的ESP8266ESP32开发环境与工具链集成项目

项目简介

本项目提供用于构建完整独立SDK(包含工具链)的集成脚本,适用于基于Espressif ESP8266和ESP8266EX芯片的软件开发。SDK由Xtensa lx106架构工具链(完全开源)和部分开源的ESP8266 IoT SDK组成,覆盖从硬件准备到程序烧录的整个开发流程。

项目的主要特性和功能

  1. 工具链构建:基于多个开源项目构建Xtensa lx106架构的开源工具链。
  2. SDK集成:集成Espressif Systems的ESP8266 IoT SDK,部分库以二进制形式提供,可用于开发。
  3. 两种构建模式:支持工具链与供应商IoT SDK分开构建,许可更清晰;也支持合并构建完全独立的ESP8266 SDK,方便软件构建。
  4. 示例应用:提供示例应用程序,便于快速了解开发流程。
  5. 完整开发流程:涵盖硬件准备、开发环境搭建、程序编写、编译和烧录等环节。

安装使用步骤

前提条件

需GNU/POSIX系统(Linux、BSD、MacOSX、带Cygwin的Windows),安装标准GNU开发工具,如bash、gcc、binutils、flex、bison等。构建工具链的机器至少有1G可用RAM + 交换空间。

依赖安装

Debian/Ubuntu

Ubuntu 14.04: bash $ sudo apt-get install make unrar-free autoconf automake libtool gcc g++ gperf \ flex bison texinfo gawk ncurses-dev libexpat-dev python-dev python python-serial \ sed git unzip bash help2man wget bzip2 较新的Debian/Ubuntu版本可能需要: bash $ sudo apt-get install libtool-bin

MacOS

bash $ brew tap homebrew/dupes $ brew install binutils coreutils automake wget gawk libtool help2man gperf gnu-sed --with-default-names grep $ export PATH="/usr/local/opt/gnu-sed/libexec/gnubin:$PATH" 此外,MacOS需要区分大小写的文件系统,可能需创建虚拟磁盘并在其上构建esp-open-sdk: bash $ sudo hdiutil create ~/Documents/case-sensitive.dmg -volname "case-sensitive" -size 10g -fs "Case-sensitive HFS+" $ sudo hdiutil mount ~/Documents/case-sensitive.dmg $ cd /Volumes/case-sensitive

构建项目

构建自包含的独立工具链 + SDK

bash $ make STANDALONE=y 或直接使用默认选择: bash $ make

构建独立的Xtensa工具链并将ESP8266 SDK分开

bash $ make STANDALONE=n

使用工具链

构建完成后,工具链(包含Xtensa HAL库)位于xtensa-lx106-elf/子目录。将xtensa-lx106-elf/bin/子目录添加到PATH环境变量,以便执行xtensa-lx106-elf-gcc等工具。构建结束会输出正确设置PATH的命令。

若选择非独立SDK,运行编译器时需添加相应的包含和库目录标志: bash $ xtensa-lx106-elf-gcc -I$(THISDIR)/sdk/include -L$(THISDIR)/sdk/lib 使用独立SDK则无需额外的-I-L标志。

示例应用

examples/子目录包含示例应用程序,可使用esp-open-sdk构建。

更新项目

bash $ make clean $ git pull $ git submodule sync $ git submodule update --init

额外配置

可取消注释crosstool-config-overrides文件中的CT_STATIC_TOOLCHAIN=y来构建静态链接的工具链。该文件和/或Makefile中可能还有更多可微调的选项。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】