在ubuntu系统中安装ESP32开发环境,基于乐鑫esp-idf
安装依赖软件包
打开终端输入
1 | sudo apt-get install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util |
安装交叉编译工具连
创建一个文件夹来保存交叉编译工具,注意不要有空格,最好不要有中文
1 | mkdir esp |
注意
如果最后出现 “error: case value ‘3’ not in enumerated type ‘i2s_comm_format_t {aka const enum
1 | wget https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_2_0-esp32-2019r1-linux-amd64.tar.gz |
下载完成后解压到esp文件夹,添加路径到环境变量中,注意自己存放的路径,使用gedit打开.bashrc文件
1 | gedit ~/.bashrc |
将实际路径添加进去
1 | export PATH="$PATH:$HOME:esp/xtensa-esp32-elf/bin:$PATH" |
安装esp-idf
可以选择从github或gitee获得esp-idf
github源安装方法
将esp-idf下载至esp文件夹,可以用浏览器去官方下载后解压过来,也可以输入以下命令获取
1 | git clone --recursive https://github.com/espressif/esp-idf.git |
这一步也可以分布进行,先clone再链接子模块
1 | git clone https://github.com/espressif/esp-idf.git |
除了 ESP-IDF 本身,还需要安装 ESP-IDF 使用的各种工具,比如编译器、调试器、Python 包等
1 | cd ~/esp/esp-idf |
与交叉编译工具一样,esp-idf也需要将路径加入到环境变量中,打开~/.bashrc,在最后加入实际路径
1 | export IDF_PATH=~/esp/esp-idf |
注意
环境变量修改后需要重启终端生效,可以用下面命令测试是否设置成功
1 | printenv PATH IDF_PATH |
若在输出中找到了esp路径,则设置成功
gitee源安装方法
下载子仓库重定向工具
1
git clone https://gitee.com/EspressifSystems/esp-gitee-tools.git
clone主仓库代码
1
git clone https://gitee.com/EspressifSystems/esp-idf.git
clone重定向后的子仓库代码
1
2cd esp-gitee-tools
export EGT_PATH=$(pwd)1
2cd esp-idf
$EGT_PATH/submodule-update.sh安装工具链
将默认python版本切换成python3后执行
1
pip install -r requirements.txt
测试例程
进入esp-idf/examples/get-started/hello_world/文件夹中,打开终端输入
1 | make menuconfig |
若弹出下面下面菜单,则开发环境安装成功了
按q退出后make flash下载可执行文件到开发板中,其他历程用法一样,需要改配置就进入make menuconfig中修改,不改则直接make flash
make指令用法
- make partition_table 查看分区
- make flash 编译并刷机
- make monitor 查看串口输出
- make app 只编译app模块
- make app-flash 只编译并烧写app模块
- make menuconfig 配置编译参数
- make all 编译所有
- make partition_table-flash 刷新分区表
- make erase_flash 擦除flash
常见错误及解决办法
编译时报错make: *** 没有规则可制作目标“check_python_dependencies”
解决办法: