news 2026/8/24 4:15:10

ESP-IDF 环境搭建一次搞定的 macOS 保姆级流程:3 步跑通 Hello world

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ESP-IDF 环境搭建一次搞定的 macOS 保姆级流程:3 步跑通 Hello world

ESP-IDF 环境搭建一次搞定的 macOS 保姆级流程:3 步跑通 Hello world

【免费下载链接】esp-idfEspressif IoT Development Framework. Official development framework for Espressif SoCs.项目地址: https://gitcode.com/GitHub_Trending/es/esp-idf

如果你手边有一块 ESP32 开发板,想在 Mac 上从零搭好 ESP-IDF 环境搭建工具链、把 Hello world 烧进开发板,这条路线只花 20 分钟左右:装 3 个工具、跑 2 条脚本、编译 1 次,终点是串口监视器里滚出的Hello world!和 10 秒循环重启日志。

先看装完长什么样

不用听我描述,直接看终点画面。idf.py flash monitor跑完后,监视器里是这样的:

I (299) hello_world: Hello world! I (399) hello_world: Restarting in 10 seconds... I (999) hello_world: Restarting in 9 seconds...

看到Hello world!加上一秒一跳的重启倒计时,就说明 ESP-IDF 环境搭建整条链路——工具链、CMake、idf.py、烧录、串口——全部通了。

主线流程:3 步跑通

第 1 步|装依赖 + 拿到代码

终端里,brew install负责装上 ESP-IDF 编译烧录必需的 CMake、Ninja 和 dfu-util;接着git clone把仓库拉到~/esp,看到Cloning into和百分比滚动就说明在正常下载:

brew install cmake ninja dfu-util git clone --depth 1 https://gitcode.com/GitHub_Trending/es/esp-idf ~/esp/esp-idf

网络慢的话加--depth 1只拉最新提交(上面已加);想要完整提交历史,去掉这个参数即可。

第 2 步|装工具链 + 激活环境

回到esp-idf目录跑./install.sh esp32,它把编译器、esptool、Python 依赖装进~/.espressif,最后出现DONE即完成。然后source ./export.sh激活环境——这一步是关键:PATH 没配好,后面所有idf.py都会报 command not found:

cd ~/esp/esp-idf ./install.sh esp32 source ./export.sh

第 3 步|编译烧录 Hello world

idf.py set-target esp32声明芯片型号并生成默认 sdkconfig;idf.py build首次编译要 2~5 分钟,结束标志是Project build complete。最后一条命令把固件烧进开发板并打开监视器,看到滚动日志里的Hello world!,就收工:

cd ~/esp/esp-idf/examples/get-started/hello_world idf.py set-target esp32 idf.py build idf.py -p /dev/cu.usbmodemXXX flash monitor

/dev/cu.usbmodemXXX换成ls /dev/cu.*里看到的串口号。退出监视器按Ctrl+]

卡住了?先对着这张表查

90% 的安装翻车都集中在这几处,每处只给一个最可能有效的动作:

症状最快解法
Permission denied(install.sh/export.sh 跑不动)仓库里加一次执行权限即可,别再 sudo 跑安装
报 Python 版本过低 / 模块缺失macOS 自带 Python 3.9 不再受支持,先补brew install python3再重跑 install.sh
idf.py: command not found忘了激活。当前终端补一句source ~/esp/esp-idf/export.sh(注意.和路径间有空格)
下载卡死、SSL 证书报错切官方下载源再装一次,命令见下
M1/M4 报bad CPU type in executableApple Silicon 需要 Rosetta 2 跑 Xtensa 工具链,装一次即可

镜像与 Rosetta 的两条命令:

export IDF_GITHUB_ASSETS="dl.espressif.com/github_assets" ./install.sh esp32
/usr/sbin/softwareupdate --install-rosetta --agree-to-license

第一条把工具下载源切到乐鑫服务器(国内用户可把值换成dl.espressif.cn/github_assets),第二条一条命令装完 Rosetta 2。

顺手优化,两分钟的事

工具链不想堆在~/.espressif第 2 步执行前 export 一个路径就行,后续export.sh和所有脚本都会认它:

export IDF_TOOLS_PATH="$HOME/esp/tools"

不想每次开终端都敲一遍 source?官方推荐用别名而不是把 export.sh 写进.zshrc(避免每个终端都被 IDF 虚拟环境占用)。在~/.zshrc里加一行alias get_idf='source ~/esp/esp-idf/export.sh',以后新终端敲get_idf就能进环境。

改完配置想进图形界面调参?idf.py menuconfig打开的就是这张界面,方向键加回车即可操作:

日常开发建议装 VS Code 的 Espressif IDF 扩展,编译、烧录、监视、调试都做成按钮,不用再记idf.py的参数顺序。

收尾:卡住了去哪查

ESP-IDF 环境搭建到这里就算落地:依赖、工具链、编译、烧录四件事各归其位,任何一步报错,先对照上面的速查表找对应症状。官方安装文档在 macOS 安装指南,更多可玩项目就在仓库的examples目录里,照着 hello_world 的套路改main目录下的 C 文件就行。

【免费下载链接】esp-idfEspressif IoT Development Framework. Official development framework for Espressif SoCs.项目地址: https://gitcode.com/GitHub_Trending/es/esp-idf

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/24 4:14:28

UG曲面建模四边渐消技巧:实现平滑过渡与A级曲面

这次我们来看一个在工业设计和产品造型中非常实用的技术点:UG曲面建模中的“四边渐消”处理。如果你在使用UG(Siemens NX)进行复杂曲面造型时,遇到过需要在四边区域实现平滑、无突兀的过渡消失效果,那么这个技巧就是为…

作者头像 李华
网站建设 2026/8/24 4:13:00

15分钟跑通SadTalker:音频驱动面部动画从环境搭建到出片

15分钟跑通SadTalker:音频驱动面部动画从环境搭建到出片 【免费下载链接】SadTalker [CVPR 2023] SadTalker:Learning Realistic 3D Motion Coefficients for Stylized Audio-Driven Single Image Talking Face Animation 项目地址: https://gitcode.c…

作者头像 李华
网站建设 2026/8/24 4:12:07

STM32开发环境搭建:Keil与VS Code高效组合配置指南

1. 项目概述:为什么选择Keil与VS Code组合?如果你刚开始接触STM32,尤其是像STM32F407这种性能强劲的微控制器,第一个拦路虎往往不是复杂的硬件外设,而是那个看起来有点“古老”的编程环境。Keil MDK(Microc…

作者头像 李华
网站建设 2026/8/24 4:10:46

智能体不确定性量化:Proper Scoring Rules评估与工程实践

1. 从“预测”到“负责任的预测”:智能体不确定性量化的核心挑战最近在跟进一些前沿的智能体(Agent)项目时,我发现一个有趣的现象:大家讨论的焦点已经从“我的智能体能不能完成任务”,逐渐转向了“我的智能…

作者头像 李华
网站建设 2026/8/24 4:10:36

三步打造高含金量实习报告:从流水账到专业文档

1. 为什么你的实习报告总像流水账?每次实习结束,面对那份干巴巴的实习报告,你是不是也感到无从下手?把日常工作内容像记账本一样罗列出来,最后连自己都看不下去。这种情况太常见了——根据我指导过上百份实习报告的经验…

作者头像 李华
网站建设 2026/8/24 4:10:11

ABAP对接企业微信机器人:模版卡片消息的实战开发指南

1. 项目概述:为什么我们需要模版卡片? 在企业微信机器人消息推送这个场景里,我们之前聊过文本、Markdown、图片甚至文件,这些类型已经能覆盖大部分日常通知需求。但如果你做过一些复杂的业务状态推送,比如采购订单审批…

作者头像 李华