macOS 上安装 ESP-IDF:6 步从 install.sh 一路走到 Hello world

发布时间:2026/9/9 18:43:38
macOS 上安装 ESP-IDF:6 步从 install.sh 一路走到 Hello world macOS 上安装 ESP-IDF6 步从 install.sh 一路走到 Hello world【免费下载链接】esp-idfEspressif IoT Development Framework. Official development framework for Espressif SoCs.项目地址: https://gitcode.com/GitHub_Trending/es/esp-idf第一次跑install.sh弹出 Permission denied装完之后敲idf.py又是 command not foundM1 的机器上还会多出一条 bad CPU type。这篇文章按动手顺序把 ESP-IDF 安装 macOS 的完整流程走一遍从选安装方式、拉代码、装工具到编译hello_world点亮开发板把一路上最常见的报错穿插在对应步骤里解决掉照着做就能一次装对。先定路线图形界面装还是跑老脚本从 ESP-IDF v6.0 开始官方默认用安装管理器 EIM一条命令加一个图形界面就能装完适合大多数新手老版本或你想完全掌控每个环节则继续走install.sh经典脚本流程。两条路都能用本文两条都提一下细节主要跟经典脚本走因为报错基本都出在这条路上。EIM 的装法很直接brew tap espressif/eim brew install eim装完执行eim install跟着向导走即可想选版本或改路径就进eim wizard。更多说明见 macOS 安装官方文档。拉代码国内网络慢是第一道坎用 EIM 的话可以跳过这节代码仓库它帮你下好了。跑经典脚本的先把代码拉到本地git clone https://gitcode.com/GitHub_Trending/es/esp-idf esp-idf这是国内镜像地址比直连快不少仓库里的子模块仍指向 GitHub如果git submodule update --init --recursive卡住可以用git config的insteadOf把 GitHub 地址整体重定向到国内镜像再重试或者干脆给终端配个代理。工具下载慢是另一回事。ESP-IDF 的工具链默认从 Espressif 的海外服务器下载跑安装脚本前先把下载源指回国内export IDF_GITHUB_ASSETSdl.espressif.cn/github_assets export PIP_INDEX_URLhttps://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple第一条让工具链走乐鑫国内服务器第二条让 Python 依赖走清华镜像。这两条是 官方文档里明确推荐的国内加速写法。第一次跑 install.sh 的三个小坎进仓库目录先看一眼脚本有没有执行权限cd esp-idf chmod x install.sh没有执行权限就会在第一步被 Permission denied 拦住加完权限再跑即可全程不需要 sudo。接着是系统层面的坎。macOS 的命令行工具链不是开箱即用的装依赖前先确认 Xcode 命令行工具在位xcode-select --install然后装编译相关依赖顺手把ccache也带上二次编译会快很多brew install cmake ninja dfu-util ccache python3注意 Python 至少要是 3.10python3 --version看一眼版本不对就先brew install python3升级再跑安装脚本否则会在装 Python 包时各种报版本错误。真正跑起来还可能撞上一个 SSL 证书报错CERTIFICATE_VERIFY_FAILED这是 Homebrew 的 Python 没装根证书导致的去 Homebrew 的 Python 安装目录里执行Install Certificates.command修一次就好了之后不用再做。三关都过了正式安装。指定要支持的芯片比如只开发 ESP32./install.sh esp32后面多个芯片用逗号隔开全装就传all。M1 芯片的 bad CPU type补一块 Rosetta 就好如果你用的是 M1/M2/M3/M4 的 Mac编译 ESP32 系列项目时会看到bad CPU type in executable或者提示xtensa-esp32-elf工具找不到。原因是 ESP32 的交叉工具链是 Intel 架构的Apple 芯片上要靠 Rosetta 2 转译。装一下就行/usr/sbin/softwareupdate --install-rosetta --agree-to-license装完重开终端再跑构建这条错就消失了。纯 M 芯片开发 ESP32-C3 这类 RISC-V 芯片一般不受影响但装上也无妨。command not found环境变量差一行装完工具直接敲idf.py大概率是 command not found——因为工具还没进 PATH。ESP-IDF 用export.sh来激活环境它同时会创建 Python 虚拟环境所以不需要你手工python3 -m venv官方脚本已经替你隔离好了. ~/esp/esp-idf/export.sh注意命令开头的.和路径之间有个空格。每个新终端窗口都要执行一次嫌烦的话加个别名echo alias get_idf. \$HOME/esp/esp-idf/export.sh ~/.zshrc重启终端后任何时候敲get_idf就能进 ESP-IDF 环境。不建议把export.sh直接写进~.zshrc那会让每个终端都套上 IDF 虚拟环境可能影响别的工具。如果工具默认装到~/.espressif不合适比如磁盘空间或权限问题可以在跑install.sh前先导出IDF_TOOLS_PATH指向别的路径之后每次进环境前都要带上这个变量。编译并点亮第一个 Hello world环境就绪拿仓库自带的示例验证一下cd examples/get-started/hello_world idf.py set-target esp32 idf.py buildset-target决定给哪颗芯片编译build会同时产出应用、bootloader 和分区表。首次编译会下载和编译大量组件慢是正常的。编译通过后把开发板用 USB 接上 Mac找到串口名ls /dev/cu.*可以看到通常是/dev/cu.usbserial-XXX或/dev/cu.usbmodem*一键烧录加监控idf.py -p /dev/cu.usbserial-XXX flash monitor串口里出现 Hello world! 就全通了。接线只用到 TX、RX、GND 三根线加 3.3V 供电具体引脚见 ESP32-DevKitC 引脚图。退出监控用Ctrl ]。装好之后建议先干两件事把get_idf别名用起来然后打开 examples/get-started/hello_world/ 里的main/main.c改一行打印重新idf.py build idf.py flash确认自己的改动能上板。之后遇到问题先查 SUPPORT_POLICY_CN.md 确认你用的版本还在支持期内再去对应版本的官方文档里搜报错关键词比泛泛地搜更快定位。【免费下载链接】esp-idfEspressif IoT Development Framework. Official development framework for Espressif SoCs.项目地址: https://gitcode.com/GitHub_Trending/es/esp-idf创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询