ESP32
树莓派搭建espidf 开发环境
esp-matter 开发记录
WLED 笔记
esp32s3 作为 USB HOST UAC 读取 CM108A声卡
ESP-IDF USB Host UAC 支持情况
USB Host 与 Device 模式说明
ESP32-S3 UAC设备工作原理分析
espressif/usb_host_uac 组件完整使用指南
USB UAC Host 使用指南
本文档使用 MrDoc 发布
-
+
首页
树莓派搭建espidf 开发环境
**解决Ninja 架构不兼容问题** 针对树莓派(ARM架构)通过源码安装 **Ninja** 的具体步骤如下: --- ### **1. 安装依赖工具** 在编译 Ninja 前,需确保系统已安装以下依赖: ```bash sudo apt update sudo apt install git python3 re2c # re2c是Ninja编译的必需依赖 ``` --- ### **2. 从源码编译 Ninja** #### **步骤 1:克隆 Ninja 源码** ```bash git clone https://github.com/ninja-build/ninja.git cd ninja git checkout release # 切换到稳定分支 ``` #### **步骤 2:执行编译脚本** 运行以下命令生成 Ninja 可执行文件: ```bash python3 configure.py --bootstrap # 使用Python3编译 ``` • 编译完成后,当前目录会生成 `ninja` 二进制文件。 --- ### **3. 安装到指定目录** 将编译好的 Ninja 文件复制到 ESP-IDF 工具链目录(替换原有错误版本): ```bash # 创建目录并复制文件 mkdir -p ~/.espressif/tools/ninja/1.11.1 cp ninja ~/.espressif/tools/ninja/1.11.1/ chmod +x ~/.espressif/tools/ninja/1.11.1/ninja # 添加可执行权限 ``` --- ### **4. 验证安装** 检查 Ninja 版本及架构兼容性: ```bash ~/.espressif/tools/ninja/1.11.1/ninja --version # 应输出版本号(如1.11.1) file ~/.espressif/tools/ninja/1.11.1/ninja # 确认输出包含"ARM"或"aarch64" ``` ### **常见问题处理** 1. **缺少 Python3 或版本过低** 确保系统默认 Python 为 Python3,可通过 `python3 --version` 检查。若未安装,执行: ```bash sudo apt install python3 ``` 2. **re2c 安装失败** 若通过 `apt` 安装的 re2c 版本过低,需手动从源码安装: ```bash wget http://re2c.org/re2c-2.2.tar.gz tar -xzf re2c-2.2.tar.gz cd re2c-2.2 ./configure && make && sudo make install # 编译并安装 ``` 3. **编译报错权限不足** 确保所有操作在用户权限下执行,避免使用 `sudo` 编译(可能导致路径混乱)。 --- ### **总结** 通过源码编译可绕过预编译二进制文件的架构兼容性问题。此方法适用于所有 ARM 架构设备(包括树莓派 3B+/4B),且能灵活控制 Ninja 版本。若后续需要升级 Ninja,只需重复上述步骤并替换二进制文件即可。
qingkai
2025年3月13日 20:57
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码