官网文档位置https://docs.espressif.com/projects/esp8266-rtos-sdk/en/latest/get-started/linux-setup.html

我的系统环境:Ubuntu 18.04.3 LTS 64位的

4.18.0-21-generic #22~18.04.1-Ubuntu SMP Thu May 16 15:07:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

我的硬件设备是:ESP-WROOM-02 内存是2M

1,首先允许如下命令

sudo apt-get install gcc git wget make libncurses-dev flex bison gperf python python-serial

2,然后下载工具链:我下载的是64位的

3,然后下载SDK ,我用的是ESP8266_RTOS_SDK 2.0.0
https://github.com/espressif/ESP8266_RTOS_SDK/releases/tag/v2.0.0

4,还要下载一个文件,可能是2.0版本忘记放里了。
https://github.com/esp8266/esp8266-wiki/blob/master/libs/libhal.a

5,解压上面下载的文件,进入如下位置:
/home/lb/esp2020/xtensa-lx106-elf/bin

6,将其导入到环境变量中:

echo "export PAT/home/lb/esp2020/xtensa-lx106-elf/binf/bin:$PATH" >> ~/.bashrc

7,将libhal.a复制到SDK的libs目录下
/home/lb/esp2020/ESP8266_RTOS_SDK-2.0.0/lib

8,进入到SDK的示例工程project_template中
/home/lb/esp2020/ESP8266_RTOS_SDK-2.0.0/examples/project_template

9,修改编译脚本的环境变量SDK_PATH(SDK路径)和BIN_PATH(编译输出bin路径)

gedit gen_misc.sh



修改如下内容
export SDK_PATH=/home/lb/esp2020/ESP8266_RTOS_SDK-2.0.0
export BIN_PATH=/home/lb/esp2020/ESP8266_RTOS_SDK-2.0.0/mybin

10,运行编译脚本,根据自身需要按步骤选择编译选项

./gen_misc.sh

说明:编译选项,我内存2M,所以

APP?=     1=user1.bin
SPI_SPEED?=40
SPI_MODE?=DIO
SPI_SIZE_MAP?=    5=2048KB(1024KB+1024KB)

烧写:

下载官网工具:
https://github.com/espressif/esptool

然后将文件esptool.py复制到指定位置:

sudo cp esptool.py /usr/bin
pip install pyserial

//查看设备端口号,一般是ttyUSB 
ls /dev/tty*   

/*单文件下载*/
sudo python /usr/bin/esptool.py --port /dev/ttyUSB0 write_flash 0x01000 user1.bin
/*多文件下载*/
sudo python /usr/bin/esptool.py --port /dev/ttyUSB0 write_flash 0x01000 user1.bin 0x81000 user2.bin