When Installing Pyaudio, Pip Cannot Find Portaudio.H in /Usr/Local/Include

when installing pyaudio, pip cannot find portaudio.h in /usr/local/include

Since pyAudio has portAudio as a dependency, you first have to install portaudio.

brew install portaudio

Then try: pip install pyAudio. If the problem persists after installing portAudio, you can specify the directory path where the compiler will be able to find the source programs (e.g: portaudio.h). Since the headers should be in the /usr/local/include directory:

pip install --global-option='build_ext' --global-option='-I/usr/local/include' --global-option='-L/usr/local/lib' pyaudio

PyAudio installation always fails on Mac

Very likely you need to specify the directory path where the compiler can find the source programs like portaudio.h.

Under assumption that the headers are in /usr/local/include directory, try to run the below command in the Terminal:

pip install --global-option='build_ext' --global-option='-I/usr/local/include' --global-option='-L/usr/local/lib' pyaudio

Unable to install PyAudio on M1 Mac [PortAudio already installed]

This Solution is tested on M1 Macs[Please do check with other].

After the installation of HomeBrew on your system, perform the installation of PortAudio. Next follow the steps mentioned below:

Use the command to install PortAudio

sudo brew install portaudio

After successful installation of PortAudio, enter the following command.

sudo nano $HOME/.pydistutils.cfg

Next, enter the following lines in the opened window

[build_ext]
include_dirs=/Users/<enter-your-system-username>/homebrew/Cellar/portaudio/19.20140130/include/
include_dirs=/Users/<enter-your-system-username>/homebrew/Cellar/portaudio/19.20140130/lib/

Note: PortAudio location may be different for you and also don't forget to replace your PC username.

Finally run the command

pip install pyaudio

or

pip3 install pyaudio

How to fix installation issues for PyAudio, PortAudio: fatal error C1083: Cannot open include file: 'portaudio.h': No such file or directory

portaudio is not a Python package, it's a C library that's entirely independent of Python, so you can't install it via pip.

See the PortAudio for website for details on the official way to get it and install it on your platform.

AFAIK, the official way to get it on Windows is to download the source and then follow the instructions in the Tutorial for compiling it yourself. You probably want to build it with the same compiler you use for Python C extensions, although I'm not sure if that's required.

Or, if you're using a third-party package manager like Chocolatey on Windows, there's a good chance it can install PortAudio.

Or, if you use Anaconda or Miniconda for your Python, the conda package manager knows how to install non-Python packages that Python packages depend on, including portaudio.

Finally, there seem to be a number of people providing unofficial pre-compiled PortAudio binaries for Windows. If you search for "portaudio windows binary" or "portaudio windows pre-compiled" you'll find a number of them. I have no idea how well-tested, up-to-date, etc. any of these are.


If you're using Anaconda/Miniconda, you should have used conda install pyaudio rather than pip install pyaudio in the first place. You should really only use pip for packages that aren't available on conda or conda-forge.

If you haven't set up conda-forge yet, you probably want to do that first:

conda config --add channels conda-forge 

And then, this should be all you need:

conda install pyaudio

Unlike the pip package, which just assumes you have portaudio installed properly, the conda package will either automatically install portaudio as a dependency for pyaudio, or tell you why it can't.



Related Topics



Leave a reply



Submit