Ubuntu下PlatformIO下载极慢?一招配置proxy,完美解决ESP32依赖包下载超时!
在 Ubuntu 环境下使用 PlatformIO 进行 ESP32 开发时初次搭建环境往往会遇到一个令人头疼的问题依赖包下载极慢甚至超时失败。PlatformIO 默认从海外服务器拉取工具链和框架包尤其是framework-arduinoespressif32这种几百兆的大包在国内网络环境下极易卡死。本文将分享一个亲测有效的解决方案通过配置本地proxy加速 PlatformIO 下载帮你彻底解决环境搭建的网络瓶颈。一、 问题背景在执行 PlatformIO 初始化或手动安装依赖时终端常常卡在Downloading 0%或直接抛出超时错误Error: [API] Could not connect to PlatformIO Registry Service. Please try later.虽然配置国内镜像源如清华源、阿里源能缓解部分问题但有时仍无法完全解决。此时让 PlatformIO 走代理是最直接有效的“杀手锏”。二、 解决步骤1. 确认你的proxy地址假设你的proxy服务器运行在局域网或本地地址为xx.xx.xx.xx端口为8888。2. 配置环境变量临时生效PlatformIO 底层基于 Python 的requests库进行 HTTP 请求因此可以通过设置系统环境变量来指定代理。在 Ubuntu 终端中执行以下命令注意环境变量名必须大写export HTTP_PROXYhttp://xx.xx.xx.xx:xxxx export HTTPS_PROXYhttp://xx.xx.xx.xx:xxxx 3. 验证代理是否生效使用curl命令测试是否能通过proxy连通 PlatformIO 官方注册中心curl -I https://registry.platformio.org如果返回了HTTP/1.1 200 Connection established和HTTP/2 200状态码说明代理配置成功4. 清理损坏的缓存关键由于之前网络不好本地可能已经留下了残缺的缓存文件。如果不清理PlatformIO 可能会尝试复用坏文件导致继续报错。执行以下命令清理缓存rm -rf ~/.platformio/.cache5. 重新执行下载命令在同一个终端窗口中重新运行你的安装命令以安装 ESP32 核心框架为例pio pkg install --global --tool platformio/framework-arduinoespressif32此时你会发现下载速度有了质的飞跃几百兆的包很快就能下载完成。三、 进阶如何永久生效如果你希望以后每次打开终端都自动使用这个proxy避免重复输入export命令可以将其写入 Shell 配置文件中echo export HTTP_PROXYhttp://10.128.63.63:8888 ~/.bashrc echo export HTTPS_PROXYhttp://10.128.63.63:8888 ~/.bashrc source ~/.bashrc