Pyaudio, portaudio and mac 10.7.5

10,887

Solution 1

$ brew install portaudio
$ pip install pyaudio

Some missing libraries and such that portaudio provides. Works for Python 2.7 (not sure about other versions)

Solution 2

How about the following:

$ sudo port install py27-pyaudio
Warning: port definitions are more than two weeks old, consider using selfupdate
--->  Computing dependencies for py27-pyaudio
--->  Fetching archive for py27-pyaudio
--->  Attempting to fetch py27-pyaudio-0.2.7_0.darwin_12.x86_64.tbz2 from http://lil.fr.packages.macports.org/py27-pyaudio
--->  Attempting to fetch py27-pyaudio-0.2.7_0.darwin_12.x86_64.tbz2.rmd160 from http://lil.fr.packages.macports.org/py27-pyaudio
--->  Installing py27-pyaudio @0.2.7_0
--->  Activating py27-pyaudio @0.2.7_0
--->  Cleaning py27-pyaudio
--->  Updating database of binaries: 100.0%
--->  Scanning binaries for linking errors: 100.0%
--->  No broken files found.
$ python -c "import pyaudio"
$

This works for me at least.

Solution 3

Following my comment above, this is similar to this answer, but since OP wasn't clear with it, I'm going to try again. (This is basically just a cut and paste from some notes I made to myself when I was doing this.)

  1. This is a build for 32-bit.
  2. Download pyaudio, and portaudio (I used 0.2.4, v19).
  3. cd portaudio
  4. make clean
  5. CC="gcc -arch i386" ./configure -enable-static
  6. make
  7. sudo make install (maybe not needed if you statically link to it).
  8. move portaudio into the PyAudio directory, that is:
    1. cd .. (out of portaudio)
    2. mv portaudio PyAudio/portaudio-v19 (note need the v19 here)
  9. cd into PyAudio and run:
    1. make sure you're in the virtual environment, ie, source bin/activate
    2. python setup.py build –static-link
    3. python setup.py install

Solution 4

Create a virtual env, activate it:

virtualenv env
env/bin/activate

Download PyAudio ( latest at the time ):

wget -c http://people.csail.mit.edu/hubert/pyaudio/packages/pyaudio-0.2.8.tar.gz
tar zxf pyaudio-0.2.8.tar.gz
cd PyAudio-0.2.8/

Unzip portaudio inside PyAudio folder, rename it to portaudio-v19 and build it:

wget -c http://www.portaudio.com/archives/pa_stable_v19_20140130.tgz
tar zxf pa_stable_v19_20140130.tgz
mv portaudio portaudio-v19
cd portaudio-v19
./configure
make
cd ../

Back to PyAudio directory:

export CFLAGS="-I `pwd`/portaudio-v19/include/ -L `pwd`/portaudio-v19/lib/.libs/"
python setup.py build --static-link
python setup.py install

Thats all!

Solution 5

The crucial point is this command:

export CFLAGS="-I `pwd`/portaudio-v19/include/ -L `pwd`/portaudio-v19/lib/.libs/"

which avoids no such file error.

This solved my problem, thanks very much to @tuxdna.

Share:
10,887

Related videos on Youtube

Leo Mizuhara
Author by

Leo Mizuhara

Updated on June 04, 2022

Comments

  • Leo Mizuhara
    Leo Mizuhara almost 2 years

    I'm having trouble installing pyaudio correctly. I have a virtualenv set up for the project. I first tried to install portaudio:

    sudo port install portaudio
    

    which returns:

    --->  Cleaning portaudio
    --->  Scanning binaries for linking errors: 100.0%
    --->  No broken files found.
    

    I assume that means it ran fine. Then I tried:

    pip install pyaudio
    

    Which returns:

    Downloading/unpacking pyaudio
    Running setup.py egg_info for package pyaudio
    
    warning: no files found matching '*.c' under directory 'test'
    Installing collected packages: pyaudio
    Running setup.py install for pyaudio
    building '_portaudio' extension
    gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -DMACOSX=1 -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c src/_portaudiomodule.c -o build/temp.macosx-10.6-intel-2.7/src/_portaudiomodule.o -fno-strict-aliasing
    src/_portaudiomodule.c:29:23: error: portaudio.h: No such file or directory
    src/_portaudiomodule.c:33:25: error: pa_mac_core.h: No such file or directory
    ...
    

    Is that first warning a problem? I'm a bit surprised it's saying no file or directory for portaudio.h. Do I have to do something special to enable my port audio macport installation?

    Appreciate any help!

  • Leo Mizuhara
    Leo Mizuhara over 11 years
    Thanks! I haven't had time to work on this project this weekend, but I'll come back to it when I have time to play with it again.
  • Leo Mizuhara
    Leo Mizuhara about 11 years
    I tried your solution, I can get up to step 6. When I make it returns: "{standard input}:5:bad register name `%r13'" (about 40 similar errors) then "make: *** [src/common/pa_allocation.lo] Error 1" I don't know what to make of that... should I open a new question?
  • Zach Siegel
    Zach Siegel over 6 years
    Worked for me on OS X Sierra