src/pyaudio/device_api.c:9:10: fatal error: portaudio.h: 没有那个文件或目录

news/2025/1/15 11:07:16/
(venv) shgbitai@shgbitai-C9X299-PGF:~/pythonworkspace/ai-accompany$ pip install pyaudio sounddevice
Collecting pyaudioDownloading PyAudio-0.2.14.tar.gz (47 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 47.1/47.1 kB 644.0 kB/s eta 0:00:00Installing build dependencies ... doneGetting requirements to build wheel ... donePreparing metadata (pyproject.toml) ... done
Collecting sounddeviceDownloading sounddevice-0.5.0-py3-none-any.whl.metadata (1.4 kB)
Collecting CFFI>=1.0 (from sounddevice)Downloading cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (1.5 kB)
Collecting pycparser (from CFFI>=1.0->sounddevice)Downloading pycparser-2.22-py3-none-any.whl.metadata (943 bytes)
Downloading sounddevice-0.5.0-py3-none-any.whl (32 kB)
Downloading cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (479 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 479.4/479.4 kB 3.5 MB/s eta 0:00:00
Downloading pycparser-2.22-py3-none-any.whl (117 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 117.6/117.6 kB 13.5 MB/s eta 0:00:00
Building wheels for collected packages: pyaudioBuilding wheel for pyaudio (pyproject.toml) ... errorerror: subprocess-exited-with-error× Building wheel for pyaudio (pyproject.toml) did not run successfully.│ exit code: 1╰─> [18 lines of output]running bdist_wheelrunning buildrunning build_pycreating buildcreating build/lib.linux-x86_64-cpython-312creating build/lib.linux-x86_64-cpython-312/pyaudiocopying src/pyaudio/__init__.py -> build/lib.linux-x86_64-cpython-312/pyaudiorunning build_extbuilding 'pyaudio._portaudio' extensioncreating build/temp.linux-x86_64-cpython-312creating build/temp.linux-x86_64-cpython-312/srccreating build/temp.linux-x86_64-cpython-312/src/pyaudiox86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -I/usr/local/include -I/usr/include -I/home/shgbitai/pythonworkspace/ai-accompany/venv/include -I/usr/include/python3.12 -c src/pyaudio/device_api.c -o build/temp.linux-x86_64-cpython-312/src/pyaudio/device_api.osrc/pyaudio/device_api.c:9:10: fatal error: portaudio.h: 没有那个文件或目录9 | #include "portaudio.h"|          ^~~~~~~~~~~~~compilation terminated.error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1[end of output]note: This error originates from a subprocess, and is likely not a problem with pip.ERROR: Failed building wheel for pyaudio
Failed to build pyaudio
ERROR: Could not build wheels for pyaudio, which is required to install pyproject.toml-based projects

错误信息显示,pyaudio 依赖的 portaudio.h 文件无法找到,这是因为 PyAudio 需要依赖 PortAudio 库,而你的系统中没有安装该库。

你可以通过以下步骤解决这个问题:

1. 安装 PortAudio

在大多数基于 Debian 的系统(如 Ubuntu)上,可以通过包管理器 apt 安装 PortAudio 依赖。

运行以下命令:

sudo apt-get install portaudio19-dev

该命令会安装开发版本的 PortAudio,包含头文件 portaudio.h,这是 PyAudio 构建时所需要的。

2. 重新安装 PyAudiosounddevice

安装完 PortAudio 库后,重新运行安装命令:

pip install pyaudio sounddevice

如果你使用的是其他 Linux 发行版

如果你不是使用 Ubuntu 或 Debian 系列的 Linux 发行版,安装 portaudio 库的命令可能不同。你可以根据你的发行版查找相应的安装命令,例如:

  • Fedora:

    sudo dnf install portaudio-devel
    
  • Arch Linux:

    sudo pacman -S portaudio
    

3. 如果你仍然遇到问题

如果问题依然存在,可以考虑使用 PyAudio 的预编译二进制版本,通过 pip 安装预编译的包:

pip install pipwin
pipwin install pyaudio

总结

这个错误是由于缺少 portaudio 开发库导致的,通过安装 portaudio19-dev 库来解决此问题,然后重新安装 pyaudio


http://www.ppmy.cn/news/1522513.html

相关文章

Linux中的Vim文本编辑器

Linux中的Vim是一个非常强大的文本编辑器,它提供了丰富的命令来支持各种文本编辑操作。以下是一个Vim常用命令的详细总结,涵盖了基本操作、编辑命令、移动光标、查找替换、保存退出等多个方面。 一、基本操作 启动Vim vim:直接启动Vim编辑器…

Rust模块std::thread

【图书介绍】《Rust编程与项目实战》-CSDN博客 《Rust编程与项目实战》(朱文伟,李建英)【摘要 书评 试读】- 京东图书 (jd.com) Rust到底值不值得学,之一 -CSDN博客 Rust到底值不值得学,之二-CSDN博客 Rust多线程编程概述-CSDN博客 12.…

4 路由模式

路由模式 逻辑图 如果我们将生产环境的日志进行处理,而日志是分等级的,我们就按照 error waring info三个等级来讲解 一个消费者是处理【所有】(info,error,warning)的日志,用于做数据仓库&am…

简说目前市面上最流行的“AI Agentic”

背景 当吴恩达在布道完著名的Agent设计模式后 他于不久后又引领了AI界的开发们开始关注另一种高级开发模式,即"Agentic",吴恩达多次反复强调:“Agentic是比Agent更具未来”。 那么什么是Agentic呢? 什么是AI Agentic…

新换了电脑,电脑里常用的6款软件,下载回来继续用

新换了电脑,准备把之前电脑里常用的几款软件都下载回来继续用,独乐乐不如众乐乐,分享一下~ 1、Listen 1 一款开源、免费的音乐播放器,它能够整合多个主流音乐平台的资源,包括网易云音乐、QQ音乐、酷狗音乐、酷我音乐、…

[SWPUCTF 2021 新生赛]web方向(一到六题) 解题思路,实操解析,解题软件使用,解题方法教程

题目来源 NSSCTF | 在线CTF平台因为热爱,所以长远!NSSCTF平台秉承着开放、自由、共享的精神,欢迎每一个CTFer使用。https://www.nssctf.cn/problem [SWPUCTF 2021 新生赛]gift_F12 这个题目简单打开后是一个网页 我们一般按F12或者是右键查…

WorkPlus安全即时通讯:端到端加密开启信息保密新时代

在数字化时代,信息的保密性和安全性变得越发重要。企业和个人需要确保他们的敏感信息和机密通讯不会落入黑客或第三方的手中。为了满足这一需求,WorkPlus安全即时通讯平台应运而生。作为一款拥有端到端加密功能的通讯平台,WorkPlus着重于保护…

小米Vela:端侧AI推理框架

小米Vela是小米公司基于开源实时操作系统NuttX打造的物联网嵌入式软件平台。该平台旨在为各种物联网硬件提供统一的软件服务,支持丰富的组件和易用的框架,以打通碎片化的物联网应用场景。2024年8月在“开源中国开源世界”大会,小米对外公开超…