首页 > 其他分享 >解决MacOS 13.0.1 苹果M1芯片 导入pyaudio报错的问题

解决MacOS 13.0.1 苹果M1芯片 导入pyaudio报错的问题

时间:2024-10-01 12:33:43浏览次数:8  
标签:MacOS pyaudio global sounddevice portaudio pip 报错

【问题】
如果正常按照网上的教程,在terminal先使用brew安装portaudio(brew install portaudio),再使用pip在conda环境里安装pyaudio(pip install pyaudio),然后python直接导入pyaudio(import pyaudio)会报错如下:

【分析】
可知报错来自于portaudio动态库。网上搜索解决方案,除了重装、重启外,就是使用pip的 --global-option 命令去手动添加portaudio的头文件(https://github.com/OpenInterpreter/01/issues/68):
pip install --global-option='build_ext' --global-option='-I/opt/homebrew/Cellar/portaudio/19.7.0/include' --global-option='-L/opt/homebrew/Cellar/portaudio/19.7.0/lib' pyaudio.

然而新版的pip(我用的24.2)早就不支持--global-option命令了。我尝试按照这个解决方案的精神,自行下载编译portaudio,然后再手动下载pyaudio的包,在其setup.py手动添加portaudio/include和portaudio/lib的路径,并在其setup.cfg文件中添加相应内容,都无法解决。我觉得博主“你若向前”说的可能有道理(https://blog.csdn.net/StoryZX/article/details/123150790),也许是苹果芯片采用了ARM64架构的原因,具体还未研究清楚。

【解决】
最终解决方案是偶然试出来的。安装库sounddevice:pip install sounddevice,然后在导入pyaudio前先倒入sounddevice,就不会报错了:
import sounddevice
import pyaudio

而且确实是sounddevice的作用,因为如果只导入sounddevice所依赖的包(在sounddevice.py中),依然产生相同报错。
依然不知道为什么。。期待大神解答,反正目前问题是解决了。

标签:MacOS,pyaudio,global,sounddevice,portaudio,pip,报错
From: https://www.cnblogs.com/jiaming121/p/18442817

相关文章

  • VMware ESXi 8.0U3b macOS Unlocker & OEM BIOS 2.7 Dell HPE 定制版 9 月更新发布
    VMwareESXi8.0U3bmacOSUnlocker&OEMBIOS2.7DellHPE定制版9月更新发布VMwareESXi8.0U3bmacOSUnlocker&OEMBIOS2.7标准版和厂商定制版ESXi8.0U3标准版,Dell(戴尔)、HPE(慧与)、Lenovo(联想)、IEITSYSTEMS(浪潮信息)、Cisco(思科)、Fujitsu(富士通)......
  • c# - - - .net core 判断程序运行的环境,Windows环境或Linux环境或MacOs环境
    c#.netcore判断程序运行的环境,Windows环境或Linux环境或MacOs环境Codeif(RuntimeInformation.IsOSPlatform(OSPlatform.Linux)){//Linux}elseif(RuntimeInformation.IsOSPlatform(OSPlatform.Windows)){//Windows}elseif(RuntimeInformation.IsOSPlatform(OSPlatfo......
  • Excel启动报错ntdll.dll?Excel ntdll.dll错误解决方案汇总
    当您在启动MicrosoftExcel时遇到“找不到ntdll.dll”或“ntdll.dll缺失/损坏”的错误提示,这意味着您的计算机上缺少或损坏了一个重要的系统文件。ntdll.dll文件是Windows操作系统中的核心文件之一,用于支持许多底层的系统功能和服务。缺失或损坏该文件会导致包括Excel在内的多......
  • Navicat频繁报错ntdll.dll?ntdll.dll错误修复指南助你恢复正常!
    Navicat频繁报错ntdll.dll确实是一个令人头疼的问题,但别担心,以下是一份详细的ntdll.dll错误修复指南,帮助你恢复正常使用Navicat。一、了解ntdll.dll文件ntdll.dll是Windows操作系统中一个重要的动态链接库文件,它提供了系统级的函数和系统调用支持,执行与进程和线程管理相关的......
  • 怎么解决os.system中Program Files中空格报错的问题
    在通过os.system(PATH)时由于c盘中的ProgramFiles之间带有空格,从而导致在识别时会识别到Program时停止从而产生报错例如:os.system('C:\ProgramFiles(x86)\Microsoft\Edge\Application\msedge.exe')通过网上查找原因,大部分都是说加上双引号就行了我以为是:"C:\ProgramF......
  • JWT 令牌生成报错
    一、问题描述我在获取JWT令牌时,报了一个这样的错误error:io.jsonwebtoken.security.WeakKeyException:Thesigningkey'ssizeis64bitswhichisnotsecureenoughfortheHS256algorithm.二、问题原因原因是我这里指定的签名密钥也就是signingKey,也就是‘cehgnxuyu......
  • Jenkins拉取代码报错通过git配置浅克隆
    在Linux中,使用gitconfig命令配置depth为1意味着你想要为你的Git仓库设置一个浅克隆(shallowclone)。浅克隆会克隆仓库的历史记录中的一个极简版本,通常只包含最近的一次提交。这样做可以节省带宽和时间,特别是对于那些不需要完整历史记录的项目。要配置深度为1的浅克隆,你可以使用以......
  • PKG系统安装包及IPSW固件:MacOS 11-14 正式版
    MacOS 14Sonoma,为提高生产力和创造力带来了全新的功能,有了更多使用小部件和令人惊叹的新屏幕保护程序进行个性化设置的方法,对Safari浏览器和视频会议进行了重大更新,以及优化的游戏体验——Mac体验比以往任何时候都更好。下载地址:点击下载支持机型2019年以及后续的iMa......
  • Rustup-init.exe安装后执行cargo run 报错:`link.exe` returned an unexpected error的
    版本:rustc1.81.0(eeb90cda12024-09-04)报错情况如下图:摸索了后,总结一下关键解决方法:从微软件官网:https://visualstudio.microsoft.com/zh-hans/downloads/找到选项“用于VisualStudio的工具”,在其子项中下载“VisualStudio2022生成工具”下载后安装时,在Visualstu......
  • 安防监控/智慧安防EasyCVR视频汇聚监控平台无法启动并报错“no space left on service
    视频汇聚/安防监控/智慧安防EasyCVR视频监控平台,作为一款智能视频监控综合管理平台,凭借其强大的视频融合汇聚能力和灵活的视频能力,在各行各业的应用中发挥着越来越重要的作用。平台可以引入AI智能分析能力,能够实现对视频中的特定对象进行检测、识别、跟踪,为后续的数据分析和处理提......