macOS下ESP2866 RTOS 和 esp-idf 开发环境快速切换
缘起是我计划把原先的esp-idf
升级到release/v4.1
, git pull
之后瞄了一眼文档,看到编译环境配置方式有较大变化,交叉编译工具链链接不再提供,而是通过$IDF_PATH/install.sh
脚本自动下载。
在折腾一通最终报错python_env/idf4.2_py2.7_env/bin/python: No module named pip
之后,还是决定走另外一条路:
使用不同的用户分别配置ESP8266 RTOS
和esp-idf
环境。
这么做的好处显而易见。因为ESP8266 RTOS
和esp-idf
环境除了需要配置不同的"IDF_PATH",交叉编译工具版本也不同。两个用户自己有独立的profile,切换非常方便。
macOS系统偏好设置-用户与群组
里新建用户即可(例如新建用户名为esp32)。然后在vscode的终端里通过su - esp32
来切换用户,而无需整个桌面登出和登录。
但是这样容易带来一个权限问题。所以建议是通过vscode的复制和粘贴来创建新的项目,然后在执行编译的vscode终端用户那里运行"sudo chmod -R 777 项目文件夹"。这样可以既可以通过vscode修改保存文件,而且能同时在终端的另外一个用户进行编译执行。
如果项目是通过终端命令行的用户复制的,那么在finder里面右键点击项目文件夹,选择显示简介
,然后点击右下角小锁解锁,点击+
添加当前桌面用户的读写权限并点击齿轮,选择应用到包含的项目
。
至于macOS下esp-idf
配置方法,按照官方文档即可。非常顺利。
记住要把IDF_PATH
加入用户profile
。
我这里写一个简化版:
1. 安装必要工具
- install pip:
sudo easy_install pip
- install pyserial:
pip install --user pyserial
- install CMake & Ninja build:
If you have HomeBrew, you can run:
brew install cmake ninja
- If you have MacPorts, you can run:
sudo port install cmake ninja
2. 克隆esp-idf
cd ~
git clone --recursive https://github.com/espressif/esp-idf.git
#切换到4.1分支(4.0 hello_world无法通过编译,但是4.1可以)
git checkout release/v4.1
3. 通过脚本下载交叉编译工具链和配置python虚拟环境
cd esp-idf
./install.sh
如果下载很慢,可以到这个页面Releases · espressif/binutils-esp32ulp直接用浏览器下载放到~/.espressif/dist
文件夹。
4. 配置路径
chmod +x ./export.sh
#注意下面两个点之间有个空格
. ./export.sh
5. 修改用户bash_profile
例如~/.bash_profile
或者 ~/.zshrc
#添加$IDF_PATH,注意~/esp-idf/要修改为自己的实际路径
export $IDF_PATH=~/esp-idf/
#如果是idf V4.x以上,需要添加如下内容,注意.后面有个空格
. $IDF_PATH/export.sh
6. 切换IDF版本
cd $IDF_PATH
git fetch
git checkout vX.Y.Z
git submodule update --init --recursive
注意:
如果是从其他用户目录复制过来的项目文件夹(例如project_folder
),需要更改其权限:
sudo chmod +R 777 project_folder
相关文章
- macos安装uni-app开发环境(hbuilderx 3.6.18 / macos12.4)
- macos:安装homebrew( Homebrew 4.0.10-119 / macos 12.4)
- vmware16 unlocker解锁以安装macos系统
- 〖Python 数据库开发实战 - MySQL篇④〗- MacOS 配置 MySQL 环境变量及安装MySQL图形化工具 - MySQL Workbench
- m1 macOS dbeaver 导出 导入 数据库
- macOS 中 Git 忽略 .DS_Store
- macOS networkQuality 网速测试
- tmux macOS 安装和简单配置使用
- macOS Final Cut Pro X 导入视频、剪切视频
- macOS使用brew包管理器
- macOS 安装 go