MAC M1 ESP32 CAM环境搭建笔记
最近在我的M1 MAC下安装了ESP32 CAM,非常好用。搭建环境的时候折腾了一下。这里做一个记录,希望能给有类似情况的同学提供一些线索。
1\。对于mac的big sur系统,最好安装python 3.9.1以上(我用的是3.9.6),先安装Python 3.0 9.1,再安装IDF。 Python可以下载安装包。安装包的下载地址为:https://npm.taobao.org/mirrors/python
安装目录通常是/usr/local/bin/python3 九
2\。对于git clone ESP32的开发环境IDF,注意不能使用直接下载的zip包。 Git地址:https://github.com/espressif/esp-idf,克隆地址:https://github.com/espressif/esp-idf.git
3\。 git 下载最新的 ESP 32 CAM 组件包 esp32 camera。 anxinco的例子中的esp32摄像头太老了,不支持mac的big sur系统。下载后用anxinco的项目原来的esp32摄像头目录覆盖新的esp32摄像头目录:esp32/cam/components/,克隆地址:https://github.com/espressif/esp32-camera
4\。设置默认的 python 版本。 mac不允许你更改/usr/bin/python文件(这个文件连接的是mac系统默认的python 2.7,不能使用、删除或更改,可以使用别名):
vi ~/.bash_profile
添加:别名python u003d“/usr/local/bin/Python 3.9”
保存退出后执行 source ~/bash_profile 使配置生效
4\。进入IDF目录运行/install.sh,会自动检测python 3 9的使用。一般情况下,顺利安装IDF的python环境idf4 4_py3。 9_env,安装目录一般为:
/Users/songfengchen/.espressif/python_env/idf4.4_py3.9_env /,其中songfengchen是当前mac用户名
5\。再次编辑bash_profile,指定python为idf环境下的python文件,否则执行下一步/export.sh可能会失败,提示python不是idf配置的python环境下的文件,
(警告:python解释器未从IDF_PYTHON_ENV_PATH运行,具体报错信息如下)
songfengchen@Songfengs-MacBook-Air ESP-IDF % . ./export.sh
将 IDF_PATH 设置为 '/Users/songfengchen/Documents/sean/Develop/ESP-IDF'
检测 Python 解释器
检查“蟒蛇”...
检查“python3”...
Python 3.8.2
“python3”已被检测到
将 ESP-IDF 工具添加到 PATH...
在 /usr/bin/python 中使用 Python 解释器
检查 Python 包是否是最新的...
不满足以下 Python 要求:
点击>u003d7.0
pyserial>u003d3.3
pyparsing>u003d2.0.3,<2.4.0
pyelftools>u003d0.22
给点宝贵u003du003d0.13.2.0
pygdbmi<u003d0.9.0.2
蟒蛇插座<5
kconfiglibu003du003d13.7.1
独奏>u003d1.5.3,<u003d1.5.4
位串>u003d3.1.6
ecdsa>u003d0.16.0
构造u003du003d2.10.54
要安装缺少的软件包,请运行“/Users/songfengchen/Documents/sean/Develop/ESP-IDF/install.sh”
诊断信息:
IDF\_PYTHON\_ENV\_PATH: /Users/songfengchen/.espressif/python\_env/idf4.4\_py3.8\_env
使用的 Python 解释器:/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
警告:python 解释器未从 IDF\_PYTHON\_ENV\_PATH 运行
PATH: /opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:PATHu003d/Users/songfengchen/Documents/sean/Develop/ESP-IDF/ components/esptool_py/esptool:/Users/songfengchen/Documents/sean/Develop/ESP-IDF/components/espcoredump:/Users/songfengchen/Documents/sean/Develop/ESP-IDF/components/partition_table:/Users /songfengchen/Documents/sean/Develop/ESP-IDF/components/app_update:/Users/songfengchen/.espressif/tools/xtensa-esp32-elf/esp-2021r1-8.4.0/xtensa-esp32-elf/bin :/Users/songfengchen/.espressif/tools/xtensa-esp32s2-elf/esp-2021r1-8.4.0/xtensa-esp32s2-elf/bin:/Users/songfengchen/.espressif/tools/xtensa-esp32s3-elf/esp -2021r1-8.4.0/xtensa-esp32s3-elf/bin:/Users/songfengchen/.espressif/tools/riscv32-esp-elf/esp-2021r1-8.4.0/riscv32-esp-elf/bin:/Users/ songfengchen/.espressif/tools/esp32ulp-elf/2.28.51-esp-20191205/esp32ulp-elf-binutils/bin:/Users/songfengchen/.espressif/tools/esp32s2ulp-elf/2.28.51-esp-20191205/esp32s2ulp -elf-binutils/bin:/Users/songfengchen/.espressif/tools/op enocd-esp32/v0.10.0-esp32-20210401/openocd-esp32/bin:/Users/songfengchen/.espressif/python_env/idf4.4_py3.8_env/bin:/Users/songfengchen/Documents/sean /Develop/ESP-IDF/tools:$PATH:export IDF_PATHu003d/Users/songfengchen/Documents/sean/Develop/ESP-IDF:export SDK_PATHu003d/Users/songfengchen/Documents/sean/Develop/ESP- IDF:export IDF_TOOLS_EXPORT_CMDu003d/Users/songfengchen/Documents/sean/Develop/ESP-IDF/export.sh:export IDF_TOOLS_INSTALL_CMDu003d/Users/songfengchen/Documents/sean/Develop/ :/图书馆/苹果/usr/binESP-IDF/install.sh:export IDF_PYTHON_ENV_PATHu003d/Users/songfengchen/.espressif/python_env/idf4.4_py3.8_env:/Applications/VMware Fusion.app/Contents/Public
Traceback(最近一次通话最后一次):
文件“<string>”,第 1 行,在 <module> 中
ImportError: No module named click
Traceback(最近一次通话最后一次):
文件“/Users/songfengchen/Documents/sean/Develop/ESP-IDF/tools/idf.py”,第 36 行,在 <module> 中
从 idf_py_actions.tools 导入可执行文件_exists, idf_version, merge_action_lists, realpath #noqa: E402
文件“/Users/songfengchen/Documents/sean/Develop/ESP-IDF/tools/idf_py_actions/tools.py”,第 8 行,在 <module>
导入点击
ImportError: No module named click
(eval):1: 错误模式:[/Users/songfengchen/Documents/sean/Develop/ESP-IDF/tools,
警告:无法为 zsh 版本加载 shell 自动完成功能:5.8!
vi ~/.bash_profile
添加:别名pythonu003d"/users/songfengchen/.stress/python_env/idf4.4_py3.9_env/bin/python3.9"
其中songfengchen是当前mac用户名
保存退出后,执行 source ~/bash_profile 使配置生效 6.运行/export.sh,必须是中间有空格的两点,IDF环境变量可以正确设置。信息如下:
songfengchen@Songfengs-MacBook-Air ESP-IDF % . ./export.sh
检测 Python 解释器
检查“蟒蛇”...
检查“python3”...
Python 3.9.6
“python3”已被检测到
将 ESP-IDF 工具添加到 PATH...
在python中使用Python解释器:别名为/Users/songfengchen/.espressif/python_env/idf4.4_py3.9_env/bin/python3.9
检查 Python 包是否是最新的...
满足 /Users/songfengchen/Documents/sean/Develop/ESP-IDF/requirements.txt 中的 Python 要求。
更新了 PATH 变量:
/Users/songfengchen/Documents/sean/Develop/ESP-IDF/components/esptool_py/esptool:/Users/songfengchen/Documents/sean/Develop/ESP-IDF/components/espcoredump:/Users/songfengchen/Documents/ sean/Develop/ESP-IDF/components/partition_table:/Users/songfengchen/Documents/sean/Develop/ESP-IDF/components/app_update:/Users/songfengchen/.espressif/python_env/idf4.4 _py3.9_env/bin:/opt/homebrew/bin:/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:PATHu003d/Users /songfengchen/Documents/sean/Develop/ESP-IDF/components/esptool_py/esptool:/Users/songfengchen/Documents/sean/Develop/ESP-IDF/components/espcoredump:/Users/songfengchen/Documents/sean/Develop /ESP-IDF/components/partition_table:/Users/songfengchen/Documents/sean/Develop/ESP-IDF/components/app_update:/Users/songfengchen/.espressif/tools/xtensa-esp32-elf/esp- 2021r1-8.4.0/xtensa-esp32-elf/bin:/Users/songfengchen/.espressif/tools/xtensa-esp32s2-elf/esp-2021r1-8.4.0/xtensa-esp32s2-elf/bin:/Users/songfengchen /.espressif/工具/x tensa-esp32s3-elf/esp-2021r1-8.4.0/xtensa-esp32s3-elf/bin:/Users/songfengchen/.espressif/tools/riscv32-esp-elf/esp-2021r1-8.4.0/riscv32-esp- elf/bin:/Users/songfengchen/.espressif/tools/esp32ulp-elf/2.28.51-esp-20191205/esp32ulp-elf-binutils/bin:/Users/songfengchen/.espressif/tools/esp32s2ulp-elf/2.28。 51-esp-20191205/esp32s2ulp-elf-binutils/bin:/Users/songfengchen/.espressif/tools/openocd-esp32/v0.10.0-esp32-20210401/openocd-esp32/bin:/Users/songfengchen/.espressif/ 开发/ESP-IDF:export SDK_PATHu003d/Users/songfengchen/Documents/sean/Develop/ESP-IDF:export IDF_TOOLS_EXPORT_CMDu003d/Users/songfengchen/Documents/sean/Develop/ESP-IDF/ export.sh:export IDF_TOOLS_INSTALL_CMDu003d/Users/songfengchen/Documents/sean/Develop/ESP-IDF/install.sh:export IDF_PYTHON_ENV_PATHu003d/Users/songfengchen/.espressif/python _env/idf4.4_py3.8_env:/Applications/VMwar e Fusion.app/Contents/Public:/Library/Apple/usr/binpython_env/idf4.4_py3.8_env/bin:/Users/songfengchen/Documents/sean/Develop/ESP-IDF/tools:$PATH:export IDF_PATHu003d/Users/songfengchen/Documents/sean/
完成!您现在可以编译 ESP-IDF 项目。
进入项目目录并运行:
idf.py 构建
7\。此时可以进入项目目录进行编译,或者make menuconfnig
8\。注意每次打开新的终端窗口需要进入IDF目录并执行source ~/bash_profile(设置python为3.9),然后执行/export.sh设置IDF环境变量,然后回车编译项目
更多推荐

所有评论(0)