You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派4(64位Raspbian OS)安装Mediapipe时构建失败报错

报错核心原因
  • GCC 10编译器兼容缺陷:本次报错明确是树莓派默认自带的GCC 10在处理Mediapipe的C++模板代码时触发了内部段错误,属于编译器本身的已知适配问题,旧版Mediapipe与GCC 10的兼容性较差。
  • 内存/交换空间不足:Mediapipe源码编译需要至少4G以上可用内存,树莓派默认交换分区仅100M,编译大体积代码文件时很容易出现内存耗尽,触发编译器崩溃。
  • 编译配置不适配:你参照的教程为Jetson设备专属教程,编译参数没有针对树莓派ARM架构做适配,参数错误也会引发编译失败。
对应解决方法
  1. 替换默认编译器为GCC 9
    执行以下命令安装并配置GCC 9为系统默认编译器:
# 安装gcc 9和g++ 9
sudo apt install gcc-9 g++-9
# 配置编译器优先级
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90 --slave /usr/bin/g++ g++ /usr/bin/g++-9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 80 --slave /usr/bin/g++ g++ /usr/bin/g++-10
# 验证默认编译器版本,输出应为9.x版本
gcc --version
  1. 扩大交换分区到至少4G
# 关闭当前交换分区
sudo dphys-swapfile swapoff
# 编辑交换分区配置文件
sudo nano /etc/dphys-swapfile
# 将文件内CONF_SWAPSIZE参数值修改为4096,保存后退出编辑器
# 重新生成交换分区文件
sudo dphys-swapfile setup
# 启用新的交换分区
sudo dphys-swapfile swapon
# 验证交换分区大小,swap对应的total值应为4G左右
free -h

注意:编译完成后如果不需要大交换分区,可以按上述步骤改回原数值,避免占用过多SD卡存储空间。
3. 调整编译参数适配树莓派

  • 进入Mediapipe源码目录,打开setup.py文件,找到ARM架构编译相关的参数配置,新增编译选项-march=armv8-a+fp+simd(如果使用32位树莓派系统,替换为-march=armv7-a+neon-vfpv4)
  • 编译时限制并行任务数量避免内存耗尽,使用以下命令执行编译:
python3 setup.py bdist_wheel --jobs 2
  1. 若使用树莓派4/5 64位系统,可直接搜索安装适配好的预编译Mediapipe wheel包,跳过源码编译步骤。

内容的提问来源于stack exchange,提问作者Hasan Khurshid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 08:24:11