版本:ESP-IDF v4.4.8
1. 问题描述
当我们需要经常使用 ESP-IDF 时,总要反复安装编译链、设置环境,不然就会显示
idf.py: command not found
ESP-IDF 是乐鑫官方的物联网开发框架,适用于ESP32、ESP32-S、ESP32-C 和ESP32-H 系列SoC。 它基于C/C++ 语言提供了一个自给自足的SDK,方便用户在这些平台上开发通用应用程序。
2. 解决办法
(1) 在终端中使用vim
打开~/.bashrc
,然后把esp-idf/export.sh
添加到本地环境变量中
vim ~/.bashrc
(2) 按键盘i
按键进行编辑,写入以下命令(注意把/your/pash/
替换为实际路径)
alias get_idf='source /your/pash/esp/esp-idf/export.sh'
(3) 按esc按键退出编辑,写入:wq
保存退出。
(4) 执行以下命令同步环境变量
source ~/.bashrc
(5) 直接执行get_idf
即可
出现 Permission denied 的错误
若执行get_idf
后出现:
bash: /your/pash/esp/esp-idf/export.sh: Permission denied
这是因为 /your/pash/esp/esp-idf/export.sh
文件的权限不允许当前用户执行该脚本。
运行以下命令查看 export.sh
的权限:
ls -l /your/pash/esp/esp-idf/export.sh
查看输出内容。如果文件的权限类似于:
-rw-r--r-- 1 your ... export.sh
说明文件缺少执行权限(x
权限)。
需要运行以下命令为脚本添加执行权限:
chmod +x /your/pash/esp/esp-idf/export.sh
再次运行以下命令,确认文件已经具有执行权限:
ls -l /home/xzh/esp/esp-idf/export.sh
输出应该类似于:
-rwxr-xr-x 1 xzh xzh ... export.sh
重新运行 get_idf
命令,可以看到
下次就可以直接用 get_idf
命令。