Aprende cómo instalar correctamente PyAudio en Ubuntu 18.04 y evitar que aparezca esta excepción.

Por lo general, podrás instalar PyAudio con PIP usando el siguiente comando:

pip install PyAudio

Lamentablemente, en algunas distribuciones de Ubuntu, se enfrentará a una excepción sobre una falla al construir el wheel para pyaudio. De acuerdo con la descripción del Python Packaging Index, un wheel * está diseñada para contener todos los archivos para una instalación compatible con PEP 376 de una manera muy cercana al formato en disco.

Error

La salida de error cuando intente instalar el paquete será:

pip install pyaudio
Failed building wheel for pyaudio
  Running setup.py clean for pyaudio
Failed to build pyaudio
Installing collected packages: pyaudio
  Running setup.py install for pyaudio ... error
    Complete output from command /Users/kj/Desktop/ml/gui/bin/python3 -u -c "import setuptools, tokenize;__file__='/private/var/folders/vd/8zl261fj35j8pst5659glmjc0000gn/T/pip-build-gj9ny3f9/pyaudio/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/vd/8zl261fj35j8pst5659glmjc0000gn/T/pip-45sl0b3v-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/kj/Desktop/ml/gui/include/site/python3.6/pyaudio:
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.12-x86_64-3.6
    copying src/pyaudio.py -> build/lib.macosx-10.12-x86_64-3.6
    running build_ext
    building '_portaudio' extension
    creating build/temp.macosx-10.12-x86_64-3.6
    creating build/temp.macosx-10.12-x86_64-3.6/src
    clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DMACOSX=1 -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/Users/kj/Desktop/ml/gui/include -I/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/include/python3.6m -c src/_portaudiomodule.c -o build/temp.macosx-10.12-x86_64-3.6/src/_portaudiomodule.o
    src/_portaudiomodule.c:29:10: fatal error: 'portaudio.h' file not found
    #include "portaudio.h"
             ^~~~~~~~~~~~~
    1 error generated.
    error: command 'clang' failed with exit status 1

Básicamente, el error se debe al archivo portaudio.h que falta en el sistema. PortAudio es una biblioteca de E / S de audio gratuita, multiplataforma y de código abierto.

Solución

Puede solucionar esta excepción instalando el paquete dev portaudio y pyaudio con el siguiente comando en Ubuntu:

sudo apt-get install portaudio19-dev python-pyaudio

Finalmente instale el paquete nuevamente con el comando:

pip install PyAudio

¡Y deberías poder instalarlo correctamente sin problemas!

Que te diviertas ❤️!


Ingeniero de Software Senior en EPAM Anywhere. Interesado en la programación desde los 14 años, Carlos es un programador autodidacta, fundador y autor de la mayoría de los artículos de Our Code World.

Conviertete en un programador más sociable

Patrocinadores