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

树莓派3升级PyAudio至0.2.11版本失败求助

解决树莓派PyAudio升级后版本未更新的问题

从你的日志和输出来看,问题核心是系统自带的PyAudio包被pip跳过卸载——日志里那句Not uninstalling PyAudio at /usr/lib/python2.7/dist-packages, owned by OS就是关键:pip默认不会触碰系统包管理(比如apt)安装的软件,所以虽然你成功装了0.2.11,但Python会优先加载系统目录里的0.2.8版本。

下面是几个可行的解决办法,按推荐程度排序:

1. 使用虚拟环境隔离(最稳妥,避免系统依赖冲突)

虚拟环境能彻底隔离你的项目依赖和系统包,不会影响系统原有配置:

  • 先安装virtualenv:
    sudo pip install virtualenv
    
  • 创建一个新的虚拟环境(比如叫audio_env):
    virtualenv audio_env
    
  • 激活虚拟环境:
    source audio_env/bin/activate
    
  • 现在在激活的环境里安装最新版PyAudio,这次不会有系统包的干扰:
    pip install pyaudio --upgrade
    
  • 验证版本:
    pip show pyaudio
    
    肯定会显示0.2.11,之后你的项目只要在这个虚拟环境里运行就会用新版。

2. 卸载系统包后重新安装(直接替换系统级版本)

如果你的系统没有其他依赖旧版PyAudio的软件,可以直接移除系统包再装新版:

  • 先卸载系统自带的PyAudio:
    sudo apt-get remove python-pyaudio
    
  • 安装新版PyAudio(如果之前没装portaudio依赖,先补装):
    sudo apt-get install portaudio19-dev
    sudo pip install pyaudio --upgrade
    
  • 验证:
    sudo pip show pyaudio
    
    现在版本应该就是0.2.11了。

3. 临时指定模块加载路径(不改动系统,仅针对单个项目)

如果你不想动系统包,也可以让你的Python脚本优先加载新版PyAudio:

  • 先找到新版PyAudio的安装位置,执行:
    pip show --files pyaudio
    
    看输出里的Location字段,比如可能是/usr/local/lib/python2.7/dist-packages
  • 在你的Python代码最开头添加以下内容,让Python先加载这个目录的模块:
    import sys
    # 替换成你查到的新版PyAudio所在目录
    sys.path.insert(0, '/usr/local/lib/python2.7/dist-packages')
    import pyaudio
    print(pyaudio.__version__)  # 应该输出0.2.11
    

补充说明

如果安装PyAudio时遇到编译错误,大概率是缺少portaudio依赖,先执行sudo apt-get install portaudio19-dev再重试安装。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 07:34:27