M1芯片Mac Ventura13.3.1安装depthai遇CMake未安装错误求助
解决M1 Mac安装depthai 2.16.0.0时CMake依赖报错的问题
可能的原因与解决步骤
1. 确认CMake路径已加入系统PATH且被Python识别
MacPorts安装的CMake默认路径是/opt/local/bin/cmake,需要确保该路径在系统PATH中优先级最高,避免Python调用到无效或旧版本的CMake:
- 检查当前CMake路径:
which cmake,输出应为/opt/local/bin/cmake - 检查PATH是否包含该路径:
echo $PATH,如果没找到,将其加入shell配置文件(M1 Mac默认是~/.zshrc):echo 'export PATH="/opt/local/bin:$PATH"' >> ~/.zshrc source ~/.zshrc - 验证配置生效:重新打开终端,再次执行
which cmake确认路径正确
2. 直接安装预编译arm64轮子,跳过编译步骤
旧版本depthai可能存在预编译的arm64轮子,直接安装可避免编译需求(也就不需要CMake):
pip install depthai==2.16.0.0 --only-binary :all:
如果该命令报错提示无对应轮子,可尝试手动下载匹配Python3.9+arm64的.whl文件,再执行pip install 文件名.whl
3. 确认Python环境为纯arm64架构
若Python是通过Rosetta运行的x86_64版本,可能导致编译依赖识别异常:
- 检查Python架构:
输出应为python3 -c "import platform; print(platform.machine())"arm64,若为x86_64,需切换到arm64版本的Python(可通过pyenv重新安装arm64架构的Python3.9.13)
4. 清理pip缓存后重新安装
缓存的旧安装文件可能导致依赖识别错误:
pip cache purge pip install -r requirements.txt
5. 强制指定CMake路径给pip安装命令
如果CMake路径已正确配置但仍不生效,可直接在安装时指定CMake路径:
CMAKE=/opt/local/bin/cmake pip install -r requirements.txt
6. 对比同事环境排查差异
- 确认同事的CMake版本:
cmake --version,尝试安装同版本的CMake - 检查同事是否使用Rosetta终端运行x86环境:若为是,可尝试通过Rosetta打开终端(右键终端-获取信息-勾选“使用Rosetta打开”),在x86的Python环境下重新安装
- 核对同事的依赖包版本,确保requirements.txt中的其他依赖与同事一致
内容的提问来源于stack exchange,提问作者BeKind-Rewind
相关产品推荐
相关产品推荐

