写在前面
自己的测试环境:
Ubuntu 20.04
一、问题描述
在 Ubuntu 使用$ pip install pyaudio
进行安装 pyaudio
出现如下报错:
bash
Collecting pyaudio
Using cached PyAudio-0.2.14.tar.gz (47 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: pyaudio
Building wheel for pyaudio (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for pyaudio (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [18 lines of output]
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-cpython-38
creating build/lib.linux-x86_64-cpython-38/pyaudio
copying src/pyaudio/__init__.py -> build/lib.linux-x86_64-cpython-38/pyaudio
running build_ext
building 'pyaudio._portaudio' extension
creating build/temp.linux-x86_64-cpython-38
creating build/temp.linux-x86_64-cpython-38/src
creating build/temp.linux-x86_64-cpython-38/src/pyaudio
gcc -pthread -B /home/wong/ProgramFiles/anaconda3/envs/pytorch_env/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include -I/usr/include -I/home/wong/ProgramFiles/anaconda3/envs/pytorch_env/include/python3.8 -c src/pyaudio/device_api.c -o build/temp.linux-x86_64-cpython-38/src/pyaudio/device_api.o
src/pyaudio/device_api.c:9:10: fatal error: portaudio.h: No such file or directory
9 | #include "portaudio.h"
| ^~~~~~~~~~~~~
compilation terminated.
error: command '/usr/bin/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
二、解决方法
首先安装依赖库:
bash
# 有些人说执行下面一条指令即可
sudo apt-get install portaudio19-dev
# 如果不成功,就尝试下面这条指令
sudo apt-get install libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0
然后,再次进行安装:
bash
pip install pyaudio
参考链接
[1] 关彼得.解决ubuntu安装不了pyaudio的问题(亲测有效) [EB/OL]. https://blog.csdn.net/qq_43744723/article/details/122085125, 2022-04-05/2024-04-10.
[2] Kedreamix. Failed building wheel for PyAudio 解决方法 [EB/OL]. https://zhuanlan.zhihu.com/p/680223487, 2024-01-28/2024-01-10.