Linux 平台工具链的标准设置(传统 GNU Make)
备注
ESP-IDF V4.0 及之后版本的默认构建系统为 CMake。本文档主要针对之前基于 GNU Make 的传统构建系统。请注意,未来,我们可能不会继续支持基于 GNU Make 的构建系统。
安装准备
编译 ESP-IDF 需要以下软件包:
CentOS 7:
sudo yum install gcc git wget make flex bison gperf python python2-cryptography
Ubuntu and Debian:
sudo apt-get install gcc git wget make flex bison gperf python python-pip python-setuptools python-serial python-cryptography python-future python-pyparsing python-pyelftools libffi-dev libssl-dev
Arch:
sudo pacman -S --needed gcc git make flex bison gperf python-pyserial python-cryptography python-future python-pyparsing python-pyelftools
备注
一些旧的(2014年之前)Linux 发行版中使用的 pyserial
版本可能是 2.x ,ESP-IDF 并不支持。这种情况下,请按照 第四步:安装 Python 软件包 章节的介绍,使用 pip
安装软件包。
工具链设置
Linux 版的 ESP32 工具链可以从 Espressif 的网站下载:
64 位 Linux:
32 位 Linux:
下载压缩文件之后,解压到
~/esp
目录中:64 位 Linux:
mkdir -p ~/esp cd ~/esp tar -xzf ~/Downloads/xtensa-esp32-elf-gcc8_4_0-esp-2021r2-patch3-linux-amd64.tar.gz
32 位 Linux:
mkdir -p ~/esp cd ~/esp tar -xzf ~/Downloads/xtensa-esp32-elf-gcc8_4_0-esp-2021r2-patch3-linux-i686.tar.gz
工具链将被解压到
~/esp/xtensa-esp32-elf/
路径下。为了正常使用工具链,您必须更新
~/.profile
文件中的PATH
环境变量。此外,您还可以在~/.profile
文件中增加以下代码,这样一来,所有终端窗口均可以使用xtensa-esp32-elf
:export PATH="$HOME/esp/xtensa-esp32-elf/bin:$PATH"
或者,您可以为上述命令创建一个别名。这样,您只有在需要时才可以使用工具链。如需设置别名,请将以下代码增加至您的
〜/ .profile
文件中:alias get_esp32='export PATH="$HOME/esp/xtensa-esp32-elf/bin:$PATH"'
这样,您可以在终端输入
get_esp32
命令将工具链添加至您的PATH
,从而使用工具链。备注
如果您已将
/bin/bash
设置为登录 shell,且同时存在.bash_profile
和.profile
,则请更新.bash_profile
。在 CentOS 环境下,alias
需要添加到.bashrc
文件中。退出并重新登录以使
.profile
更改生效。运行以下命令来检查PATH
设置是否正确printenv PATH
检查字符串的开头是否包含类似的工具链路径:
$ printenv PATH /home/user-name/esp/xtensa-esp32-elf/bin:/home/user-name/bin:/home/user-name/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
这里,您需要将
/home/user-name
替换为您的安装主目录。
权限问题 /dev/ttyUSB0
某些 Linux 版本可能在烧写 ESP32 时会出现 Failed to open port /dev/ttyUSB0
错误消息,这可以通过 将当前用户添加到 dialout 组 来解决。
后续步骤
继续设置开发环境,请前往 第二步:获取 ESP-IDF 章节。