Pyaudio installation error – 'command 'gcc' failed with exit status 1'
Question:
I’m running Ubuntu 11.04, Python 2.7.1 and wanted to install Pyaudio. So I ran,
$ sudo easy_install pyaudio
in the terminal and the process exited with following error messages,
Searching for pyaudio
Reading http://pypi.python.org/simple/pyaudio/
Reading http://people.csail.mit.edu/hubert/pyaudio/
Best match: pyaudio 0.2.4
Downloading http://people.csail.mit.edu/hubert/pyaudio/packages/pyaudio-0.2.4.tar.gz
Processing pyaudio-0.2.4.tar.gz
Running PyAudio-0.2.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-0Tetss/PyAudio-0.2.4/egg-dist-tmp-PYy9T8
In file included from /usr/include/python2.7/Python.h:8:0,
from src/_portaudiomodule.c:30:
/usr/include/python2.7/pyconfig.h:1155:0: warning: "_POSIX_C_SOURCE" redefined
/usr/include/features.h:214:0: note: this is the location of the previous definition
src/_portaudiomodule.c:31:23: fatal error: portaudio.h: No such file or directory
compilation terminated.
error: Setup script exited with error: command 'gcc' failed with exit status 1
I wasn’t sure whether to post this on askubuntu.com or here in stackoveflow, but anyway here it is in stackoverflow. Also I google’d a bit this question and found by installing python-dev have solved the problem for some. I’ve already installed python-dev. What may have gone wrong?
UPDATE
Following are the new errors I get after installing libportaudio-dev,
Searching for pyaudio
Reading http://pypi.python.org/simple/pyaudio/
Reading http://people.csail.mit.edu/hubert/pyaudio/
Best match: pyaudio 0.2.4
Downloading http://people.csail.mit.edu/hubert/pyaudio/packages/pyaudio-0.2.4.tar.gz
Processing pyaudio-0.2.4.tar.gz
Running PyAudio-0.2.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-LMpsIy/PyAudio-0.2.4/egg-dist-tmp-AExlqd
In file included from /usr/include/python2.7/Python.h:8:0,
from src/_portaudiomodule.c:30:
/usr/include/python2.7/pyconfig.h:1155:0: warning: "_POSIX_C_SOURCE" redefined
/usr/include/features.h:214:0: note: this is the location of the previous definition
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_hostApi’:
src/_portaudiomodule.c:211:38: error: ‘PaDeviceInfo’ has no member named ‘hostApi’
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultLowInputLatency’:
src/_portaudiomodule.c:253:42: error: ‘PaDeviceInfo’ has no member named ‘defaultLowInputLatency’
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultLowOutputLatency’:
src/_portaudiomodule.c:267:42: error: ‘PaDeviceInfo’ has no member named ‘defaultLowOutputLatency’
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultHighInputLatency’:
src/_portaudiomodule.c:282:42: error: ‘PaDeviceInfo’ has no member named ‘defaultHighInputLatency’
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultHighOutputLatency’:
src/_portaudiomodule.c:296:42: error: ‘PaDeviceInfo’ has no member named ‘defaultHighOutputLatency’
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultSampleRate’:
src/_portaudiomodule.c:310:42: error: ‘PaDeviceInfo’ has no member named ‘defaultSampleRate’
src/_portaudiomodule.c: At top level:
src/_portaudiomodule.c:465:3: error: expected specifier-qualifier-list before ‘PaHostApiInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_structVersion’:
src/_portaudiomodule.c:475:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c:481:29: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_type’:
src/_portaudiomodule.c:489:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c:495:36: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_name’:
src/_portaudiomodule.c:503:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c:503:32: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c:509:34: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_deviceCount’:
src/_portaudiomodule.c:517:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c:523:29: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_defaultInputDevice’:
src/_portaudiomodule.c:531:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c:537:29: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_defaultOutputDevice’:
src/_portaudiomodule.c:545:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c:551:29: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_dealloc’:
src/_portaudiomodule.c:569:7: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c: At top level:
src/_portaudiomodule.c:910:3: error: expected specifier-qualifier-list before ‘PaStreamParameters’
src/_portaudiomodule.c: In function ‘_is_open’:
src/_portaudiomodule.c:921:23: error: ‘_pyAudio_Stream’ has no member named ‘is_open’
src/_portaudiomodule.c: In function ‘_cleanup_Stream_object’:
src/_portaudiomodule.c:932:19: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c:933:17: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c:935:19: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’
src/_portaudiomodule.c:936:22: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’
src/_portaudiomodule.c:937:17: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’
src/_portaudiomodule.c:940:19: error: ‘_pyAudio_Stream’ has no member named ‘outputParameters’
src/_portaudiomodule.c:941:22: error: ‘_pyAudio_Stream’ has no member named ‘outputParameters’
src/_portaudiomodule.c:942:17: error: ‘_pyAudio_Stream’ has no member named ‘outputParameters’
src/_portaudiomodule.c:946:15: error: ‘_pyAudio_Stream’ has no member named ‘is_open’
src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_structVersion’:
src/_portaudiomodule.c:973:13: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c:981:29: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_inputLatency’:
src/_portaudiomodule.c:998:13: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c:1006:33: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_outputLatency’:
src/_portaudiomodule.c:1023:13: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c:1031:33: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_sampleRate’:
src/_portaudiomodule.c:1048:13: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c:1056:33: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c: In function ‘pa_get_version’:
src/_portaudiomodule.c:1168:3: warning: implicit declaration of function ‘Pa_GetVersion’
src/_portaudiomodule.c: In function ‘pa_get_version_text’:
src/_portaudiomodule.c:1177:3: warning: implicit declaration of function ‘Pa_GetVersionText’
src/_portaudiomodule.c:1177:3: warning: passing argument 1 of ‘PyString_FromString’ makes pointer from integer without a cast
/usr/include/python2.7/stringobject.h:63:24: note: expected ‘const char *’ but argument is of type ‘int’
src/_portaudiomodule.c: In function ‘pa_get_host_api_count’:
src/_portaudiomodule.c:1221:3: error: ‘PaHostApiIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1221:3: note: each undeclared identifier is reported only once for each function it appears in
src/_portaudiomodule.c:1221:18: error: expected ‘;’ before ‘count’
src/_portaudiomodule.c:1226:3: error: ‘count’ undeclared (first use in this function)
src/_portaudiomodule.c:1226:3: warning: implicit declaration of function ‘Pa_GetHostApiCount’
src/_portaudiomodule.c: In function ‘pa_get_default_host_api’:
src/_portaudiomodule.c:1248:3: error: ‘PaHostApiIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1248:18: error: expected ‘;’ before ‘index’
src/_portaudiomodule.c:1253:3: warning: implicit declaration of function ‘Pa_GetDefaultHostApi’
src/_portaudiomodule.c:1253:3: error: lvalue required as left operand of assignment
src/_portaudiomodule.c:1265:7: warning: passing argument 1 of ‘Pa_GetErrorText’ makes integer from pointer without a cast
/usr/include/portaudio.h:93:13: note: expected ‘PaError’ but argument is of type ‘char * (*)(const char *, int)’
src/_portaudiomodule.c:1269:3: warning: passing argument 1 of ‘PyInt_FromLong’ makes integer from pointer without a cast
/usr/include/python2.7/intobject.h:38:24: note: expected ‘long int’ but argument is of type ‘char * (*)(const char *, int)’
src/_portaudiomodule.c: In function ‘pa_host_api_type_id_to_host_api_index’:
src/_portaudiomodule.c:1275:3: error: ‘PaHostApiTypeId’ undeclared (first use in this function)
src/_portaudiomodule.c:1275:19: error: expected ‘;’ before ‘typeid’
src/_portaudiomodule.c:1276:3: error: ‘PaHostApiIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1276:18: error: expected ‘;’ before ‘index’
src/_portaudiomodule.c:1278:37: error: ‘typeid’ undeclared (first use in this function)
src/_portaudiomodule.c:1281:3: warning: implicit declaration of function ‘Pa_HostApiTypeIdToHostApiIndex’
src/_portaudiomodule.c:1293:7: warning: passing argument 1 of ‘Pa_GetErrorText’ makes integer from pointer without a cast
/usr/include/portaudio.h:93:13: note: expected ‘PaError’ but argument is of type ‘char * (*)(const char *, int)’
src/_portaudiomodule.c:1297:3: warning: passing argument 1 of ‘PyInt_FromLong’ makes integer from pointer without a cast
/usr/include/python2.7/intobject.h:38:24: note: expected ‘long int’ but argument is of type ‘char * (*)(const char *, int)’
src/_portaudiomodule.c: In function ‘pa_host_api_device_index_to_device_index’:
src/_portaudiomodule.c:1303:3: error: ‘PaHostApiIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1303:18: error: expected ‘;’ before ‘apiIndex’
src/_portaudiomodule.c:1305:3: error: ‘PaDeviceIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1305:17: error: expected ‘;’ before ‘devIndex’
src/_portaudiomodule.c:1308:38: error: ‘apiIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1311:3: error: ‘devIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1311:3: warning: implicit declaration of function ‘Pa_HostApiDeviceIndexToDeviceIndex’
src/_portaudiomodule.c: In function ‘pa_get_host_api_info’:
src/_portaudiomodule.c:1332:3: error: ‘PaHostApiIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1332:18: error: expected ‘;’ before ‘index’
src/_portaudiomodule.c:1333:3: error: ‘PaHostApiInfo’ undeclared (first use in this function)
src/_portaudiomodule.c:1333:18: error: ‘_info’ undeclared (first use in this function)
src/_portaudiomodule.c:1339:27: error: expected expression before ‘)’ token
src/_portaudiomodule.c:1345:7: error: ‘paInvalidHostApi’ undeclared (first use in this function)
src/_portaudiomodule.c:1350:10: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’
src/_portaudiomodule.c: In function ‘pa_get_device_count’:
src/_portaudiomodule.c:1364:3: error: ‘PaDeviceIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1364:17: error: expected ‘;’ before ‘count’
src/_portaudiomodule.c:1369:3: error: ‘count’ undeclared (first use in this function)
src/_portaudiomodule.c:1369:3: warning: implicit declaration of function ‘Pa_GetDeviceCount’
src/_portaudiomodule.c: In function ‘pa_get_default_input_device’:
src/_portaudiomodule.c:1390:3: error: ‘PaDeviceIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1390:17: error: expected ‘;’ before ‘index’
src/_portaudiomodule.c:1395:3: warning: implicit declaration of function ‘Pa_GetDefaultInputDevice’
src/_portaudiomodule.c:1395:3: error: lvalue required as left operand of assignment
src/_portaudiomodule.c:1396:13: warning: comparison between pointer and integer
src/_portaudiomodule.c:1409:7: warning: passing argument 1 of ‘Pa_GetErrorText’ makes integer from pointer without a cast
/usr/include/portaudio.h:93:13: note: expected ‘PaError’ but argument is of type ‘char * (*)(const char *, int)’
src/_portaudiomodule.c:1413:3: warning: passing argument 1 of ‘PyInt_FromLong’ makes integer from pointer without a cast
/usr/include/python2.7/intobject.h:38:24: note: expected ‘long int’ but argument is of type ‘char * (*)(const char *, int)’
src/_portaudiomodule.c: In function ‘pa_get_default_output_device’:
src/_portaudiomodule.c:1419:3: error: ‘PaDeviceIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1419:17: error: expected ‘;’ before ‘index’
src/_portaudiomodule.c:1424:3: warning: implicit declaration of function ‘Pa_GetDefaultOutputDevice’
src/_portaudiomodule.c:1424:3: error: lvalue required as left operand of assignment
src/_portaudiomodule.c:1425:13: warning: comparison between pointer and integer
src/_portaudiomodule.c:1438:7: warning: passing argument 1 of ‘Pa_GetErrorText’ makes integer from pointer without a cast
/usr/include/portaudio.h:93:13: note: expected ‘PaError’ but argument is of type ‘char * (*)(const char *, int)’
src/_portaudiomodule.c:1442:3: warning: passing argument 1 of ‘PyInt_FromLong’ makes integer from pointer without a cast
/usr/include/python2.7/intobject.h:38:24: note: expected ‘long int’ but argument is of type ‘char * (*)(const char *, int)’
src/_portaudiomodule.c: In function ‘pa_get_device_info’:
src/_portaudiomodule.c:1448:3: error: ‘PaDeviceIndex’ undeclared (first use in this function)
src/_portaudiomodule.c:1448:17: error: expected ‘;’ before ‘index’
src/_portaudiomodule.c:1455:3: warning: passing argument 1 of ‘Pa_GetDeviceInfo’ makes integer from pointer without a cast
/usr/include/portaudio.h:182:21: note: expected ‘PaDeviceID’ but argument is of type ‘char * (*)(const char *, int)’
src/_portaudiomodule.c:1460:30: error: ‘paInvalidDevice’ undeclared (first use in this function)
src/_portaudiomodule.c: In function ‘pa_open’:
src/_portaudiomodule.c:1601:3: error: ‘PaStreamParameters’ undeclared (first use in this function)
src/_portaudiomodule.c:1601:23: error: ‘outputParameters’ undeclared (first use in this function)
src/_portaudiomodule.c:1602:23: error: ‘inputParameters’ undeclared (first use in this function)
src/_portaudiomodule.c:1606:28: error: expected expression before ‘)’ token
src/_portaudiomodule.c:1622:9: error: ‘paInvalidDevice’ undeclared (first use in this function)
src/_portaudiomodule.c:1643:28: error: expected expression before ‘)’ token
src/_portaudiomodule.c:1679:3: error: ‘PaStreamInfo’ undeclared (first use in this function)
src/_portaudiomodule.c:1679:17: error: ‘streamInfo’ undeclared (first use in this function)
src/_portaudiomodule.c:1696:9: warning: passing argument 5 of ‘Pa_OpenStream’ makes pointer from integer without a cast
/usr/include/portaudio.h:325:9: note: expected ‘void *’ but argument is of type ‘int’
src/_portaudiomodule.c:1696:9: warning: passing argument 7 of ‘Pa_OpenStream’ makes integer from pointer without a cast
/usr/include/portaudio.h:325:9: note: expected ‘int’ but argument is of type ‘void *’
src/_portaudiomodule.c:1696:9: warning: passing argument 8 of ‘Pa_OpenStream’ makes integer from pointer without a cast
/usr/include/portaudio.h:325:9: note: expected ‘PaSampleFormat’ but argument is of type ‘void *’
src/_portaudiomodule.c:1696:9: error: too few arguments to function ‘Pa_OpenStream’
/usr/include/portaudio.h:325:9: note: declared here
src/_portaudiomodule.c:1712:31: error: expected expression before ‘)’ token
src/_portaudiomodule.c:1724:15: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’
src/_portaudiomodule.c:1725:15: error: ‘_pyAudio_Stream’ has no member named ‘outputParameters’
src/_portaudiomodule.c:1726:15: error: ‘_pyAudio_Stream’ has no member named ‘is_open’
src/_portaudiomodule.c:1727:15: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’
src/_portaudiomodule.c: In function ‘pa_is_format_supported’:
src/_portaudiomodule.c:1791:3: error: ‘PaStreamParameters’ undeclared (first use in this function)
src/_portaudiomodule.c:1791:22: error: expected ‘;’ before ‘inputParams’
src/_portaudiomodule.c:1792:22: error: expected ‘;’ before ‘outputParams’
src/_portaudiomodule.c:1812:5: error: ‘inputParams’ undeclared (first use in this function)
src/_portaudiomodule.c:1820:5: error: ‘outputParams’ undeclared (first use in this function)
src/_portaudiomodule.c:1827:3: warning: implicit declaration of function ‘Pa_IsFormatSupported’
src/_portaudiomodule.c:1831:16: error: ‘paFormatIsSupported’ undeclared (first use in this function)
src/_portaudiomodule.c: In function ‘pa_start_stream’:
src/_portaudiomodule.c:1870:16: error: ‘paStreamIsNotStopped’ undeclared (first use in this function)
src/_portaudiomodule.c: In function ‘pa_stop_stream’:
src/_portaudiomodule.c:1911:16: error: ‘paStreamIsStopped’ undeclared (first use in this function)
src/_portaudiomodule.c: In function ‘pa_abort_stream’:
src/_portaudiomodule.c:1952:16: error: ‘paStreamIsStopped’ undeclared (first use in this function)
src/_portaudiomodule.c: In function ‘pa_is_stream_stopped’:
src/_portaudiomodule.c:1994:3: warning: implicit declaration of function ‘Pa_IsStreamStopped’
src/_portaudiomodule.c: In function ‘pa_is_stream_active’:
src/_portaudiomodule.c:2039:3: warning: implicit declaration of function ‘Pa_IsStreamActive’
src/_portaudiomodule.c: In function ‘pa_get_stream_time’:
src/_portaudiomodule.c:2086:3: warning: implicit declaration of function ‘Pa_GetStreamTime’
src/_portaudiomodule.c: In function ‘pa_get_stream_cpu_load’:
src/_portaudiomodule.c:2118:3: warning: implicit declaration of function ‘Pa_GetStreamCpuLoad’
src/_portaudiomodule.c: In function ‘pa_write_stream’:
src/_portaudiomodule.c:2167:3: warning: implicit declaration of function ‘Pa_WriteStream’
src/_portaudiomodule.c:2171:16: error: ‘paOutputUnderflowed’ undeclared (first use in this function)
src/_portaudiomodule.c: In function ‘pa_read_stream’:
src/_portaudiomodule.c:2233:3: error: ‘PaStreamParameters’ undeclared (first use in this function)
src/_portaudiomodule.c:2233:23: error: ‘inputParameters’ undeclared (first use in this function)
src/_portaudiomodule.c:2233:53: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’
src/_portaudiomodule.c:2253:3: warning: implicit declaration of function ‘Pa_ReadStream’
src/_portaudiomodule.c:2259:15: error: ‘paInputOverflowed’ undeclared (first use in this function)
src/_portaudiomodule.c:2265:22: error: ‘paOutputUnderflowed’ undeclared (first use in this function)
src/_portaudiomodule.c: In function ‘pa_get_stream_write_available’:
src/_portaudiomodule.c:2309:3: warning: implicit declaration of function ‘Pa_GetStreamWriteAvailable’
src/_portaudiomodule.c: In function ‘pa_get_stream_read_available’:
src/_portaudiomodule.c:2334:3: warning: implicit declaration of function ‘Pa_GetStreamReadAvailable’
src/_portaudiomodule.c: In function ‘init_portaudio’:
src/_portaudiomodule.c:2384:49: error: ‘paInDevelopment’ undeclared (first use in this function)
src/_portaudiomodule.c:2385:47: error: ‘paDirectSound’ undeclared (first use in this function)
src/_portaudiomodule.c:2386:39: error: ‘paMME’ undeclared (first use in this function)
src/_portaudiomodule.c:2387:40: error: ‘paASIO’ undeclared (first use in this function)
src/_portaudiomodule.c:2388:48: error: ‘paSoundManager’ undeclared (first use in this function)
src/_portaudiomodule.c:2389:45: error: ‘paCoreAudio’ undeclared (first use in this function)
src/_portaudiomodule.c:2390:39: error: ‘paOSS’ undeclared (first use in this function)
src/_portaudiomodule.c:2391:40: error: ‘paALSA’ undeclared (first use in this function)
src/_portaudiomodule.c:2392:38: error: ‘paAL’ undeclared (first use in this function)
src/_portaudiomodule.c:2393:40: error: ‘paBeOS’ undeclared (first use in this function)
src/_portaudiomodule.c:2394:41: error: ‘paWDMKS’ undeclared (first use in this function)
src/_portaudiomodule.c:2395:40: error: ‘paJACK’ undeclared (first use in this function)
src/_portaudiomodule.c:2396:42: error: ‘paWASAPI’ undeclared (first use in this function)
src/_portaudiomodule.c:2410:50: error: ‘paNotInitialized’ undeclared (first use in this function)
src/_portaudiomodule.c:2412:6: error: ‘paUnanticipatedHostError’ undeclared (first use in this function)
src/_portaudiomodule.c:2417:49: error: ‘paInvalidDevice’ undeclared (first use in this function)
src/_portaudiomodule.c:2433:6: error: ‘paIncompatibleHostApiSpecificStreamInfo’ undeclared (first use in this function)
src/_portaudiomodule.c:2434:51: error: ‘paStreamIsStopped’ undeclared (first use in this function)
src/_portaudiomodule.c:2435:54: error: ‘paStreamIsNotStopped’ undeclared (first use in this function)
src/_portaudiomodule.c:2436:51: error: ‘paInputOverflowed’ undeclared (first use in this function)
src/_portaudiomodule.c:2437:53: error: ‘paOutputUnderflowed’ undeclared (first use in this function)
src/_portaudiomodule.c:2438:51: error: ‘paHostApiNotFound’ undeclared (first use in this function)
src/_portaudiomodule.c:2439:50: error: ‘paInvalidHostApi’ undeclared (first use in this function)
src/_portaudiomodule.c:2441:6: error: ‘paCanNotReadFromACallbackStream’ undeclared (first use in this function)
src/_portaudiomodule.c:2443:6: error: ‘paCanNotWriteToACallbackStream’ undeclared (first use in this function)
src/_portaudiomodule.c:2445:6: error: ‘paCanNotReadFromAnOutputOnlyStream’ undeclared (first use in this function)
src/_portaudiomodule.c:2447:6: error: ‘paCanNotWriteToAnInputOnlyStream’ undeclared (first use in this function)
src/_portaudiomodule.c:2449:6: error: ‘paIncompatibleStreamHostApi’ undeclared (first use in this function)
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_defaultOutputDevice’:
src/_portaudiomodule.c:552:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_defaultInputDevice’:
src/_portaudiomodule.c:538:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_deviceCount’:
src/_portaudiomodule.c:524:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_type’:
src/_portaudiomodule.c:496:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_structVersion’:
src/_portaudiomodule.c:482:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_name’:
src/_portaudiomodule.c:510:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultSampleRate’:
src/_portaudiomodule.c:311:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultHighOutputLatency’:
src/_portaudiomodule.c:297:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultHighInputLatency’:
src/_portaudiomodule.c:283:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultLowOutputLatency’:
src/_portaudiomodule.c:268:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultLowInputLatency’:
src/_portaudiomodule.c:254:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_hostApi’:
src/_portaudiomodule.c:212:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_sampleRate’:
src/_portaudiomodule.c:1057:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_is_open’:
src/_portaudiomodule.c:922:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_outputLatency’:
src/_portaudiomodule.c:1032:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_inputLatency’:
src/_portaudiomodule.c:1007:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_structVersion’:
src/_portaudiomodule.c:982:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘pa_is_format_supported’:
src/_portaudiomodule.c:1841:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘pa_get_device_count’:
src/_portaudiomodule.c:1385:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘pa_host_api_device_index_to_device_index’:
src/_portaudiomodule.c:1327:1: warning: control reaches end of non-void function
src/_portaudiomodule.c: In function ‘pa_get_host_api_count’:
src/_portaudiomodule.c:1243:1: warning: control reaches end of non-void function
error: Setup script exited with error: command 'gcc' failed with exit status 1
Answers:
Well, I solved the problem by using the package manager,
$ sudo apt-get install python-pyaudio
Although still has no clue why easy_install fails.
Found an answer at https://groups.google.com/forum/#!msg/pyo-discuss/ptp_m39ACpI/XgKdK8YGNSoJ
sudo apt-get install portaudio19-dev
On ubuntu 13.10 aka Saucy Salamander, I solved the problem by installing libjack-jackd2-dev and portaudio19-dev.
sudo apt-get install libjack-jackd2-dev portaudio19-dev
Then pip install pyaudio
should work.
I found this question after experiencing a similar error on OpenSuse (13.2). So I figured I’d post my solution as well, in case other people find this via Google.
Although libportaudio2 is the package containing the libs, you need portaudio-devel as well to make the installation work.
This is how I get it work:
- brew update (you can ignore this step if your brew is up to date)
- brew install portaudio
- brew link –overwrite portaudio
- sudo python2.7 -m pip install –global-option=’build_ext’ –global-option=’-I/usr/local/include’ –global-option=’-L/usr/local/lib’ pyaudio
I install in my virtualenv. pyaudio (0.2.11)
pip install pyaudio
-> error
sudo apt-get install portaudio19-dev
-> success
pip install pyaudio
-> success
On Fedora 27 in order to get pyaudio from a default python3 installation I did the following
sudo dnf install python3-devel
sudo dnf install portaudio-devel
sudo pip3 install pyaudio
Use the following command to install pyaudio
sudo apt-get install python-pyaudio
Had the same problem too. I’m working on a MAC and solved the issue by running these lines of code.
brew install portaudio
pip install pyaudio
This method is working for M1 Macs
This method has successfully worked for me.
I’m running Ubuntu 11.04, Python 2.7.1 and wanted to install Pyaudio. So I ran,
$ sudo easy_install pyaudio
in the terminal and the process exited with following error messages,
Searching for pyaudio Reading http://pypi.python.org/simple/pyaudio/ Reading http://people.csail.mit.edu/hubert/pyaudio/ Best match: pyaudio 0.2.4 Downloading http://people.csail.mit.edu/hubert/pyaudio/packages/pyaudio-0.2.4.tar.gz Processing pyaudio-0.2.4.tar.gz Running PyAudio-0.2.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-0Tetss/PyAudio-0.2.4/egg-dist-tmp-PYy9T8 In file included from /usr/include/python2.7/Python.h:8:0, from src/_portaudiomodule.c:30: /usr/include/python2.7/pyconfig.h:1155:0: warning: "_POSIX_C_SOURCE" redefined /usr/include/features.h:214:0: note: this is the location of the previous definition src/_portaudiomodule.c:31:23: fatal error: portaudio.h: No such file or directory compilation terminated. error: Setup script exited with error: command 'gcc' failed with exit status 1
I wasn’t sure whether to post this on askubuntu.com or here in stackoveflow, but anyway here it is in stackoverflow. Also I google’d a bit this question and found by installing python-dev have solved the problem for some. I’ve already installed python-dev. What may have gone wrong?
UPDATE
Following are the new errors I get after installing libportaudio-dev,
Searching for pyaudio Reading http://pypi.python.org/simple/pyaudio/ Reading http://people.csail.mit.edu/hubert/pyaudio/ Best match: pyaudio 0.2.4 Downloading http://people.csail.mit.edu/hubert/pyaudio/packages/pyaudio-0.2.4.tar.gz Processing pyaudio-0.2.4.tar.gz Running PyAudio-0.2.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-LMpsIy/PyAudio-0.2.4/egg-dist-tmp-AExlqd In file included from /usr/include/python2.7/Python.h:8:0, from src/_portaudiomodule.c:30: /usr/include/python2.7/pyconfig.h:1155:0: warning: "_POSIX_C_SOURCE" redefined /usr/include/features.h:214:0: note: this is the location of the previous definition src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_hostApi’: src/_portaudiomodule.c:211:38: error: ‘PaDeviceInfo’ has no member named ‘hostApi’ src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultLowInputLatency’: src/_portaudiomodule.c:253:42: error: ‘PaDeviceInfo’ has no member named ‘defaultLowInputLatency’ src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultLowOutputLatency’: src/_portaudiomodule.c:267:42: error: ‘PaDeviceInfo’ has no member named ‘defaultLowOutputLatency’ src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultHighInputLatency’: src/_portaudiomodule.c:282:42: error: ‘PaDeviceInfo’ has no member named ‘defaultHighInputLatency’ src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultHighOutputLatency’: src/_portaudiomodule.c:296:42: error: ‘PaDeviceInfo’ has no member named ‘defaultHighOutputLatency’ src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultSampleRate’: src/_portaudiomodule.c:310:42: error: ‘PaDeviceInfo’ has no member named ‘defaultSampleRate’ src/_portaudiomodule.c: At top level: src/_portaudiomodule.c:465:3: error: expected specifier-qualifier-list before ‘PaHostApiInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_structVersion’: src/_portaudiomodule.c:475:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c:481:29: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_type’: src/_portaudiomodule.c:489:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c:495:36: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_name’: src/_portaudiomodule.c:503:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c:503:32: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c:509:34: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_deviceCount’: src/_portaudiomodule.c:517:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c:523:29: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_defaultInputDevice’: src/_portaudiomodule.c:531:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c:537:29: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_defaultOutputDevice’: src/_portaudiomodule.c:545:13: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c:551:29: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_dealloc’: src/_portaudiomodule.c:569:7: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c: At top level: src/_portaudiomodule.c:910:3: error: expected specifier-qualifier-list before ‘PaStreamParameters’ src/_portaudiomodule.c: In function ‘_is_open’: src/_portaudiomodule.c:921:23: error: ‘_pyAudio_Stream’ has no member named ‘is_open’ src/_portaudiomodule.c: In function ‘_cleanup_Stream_object’: src/_portaudiomodule.c:932:19: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c:933:17: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c:935:19: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’ src/_portaudiomodule.c:936:22: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’ src/_portaudiomodule.c:937:17: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’ src/_portaudiomodule.c:940:19: error: ‘_pyAudio_Stream’ has no member named ‘outputParameters’ src/_portaudiomodule.c:941:22: error: ‘_pyAudio_Stream’ has no member named ‘outputParameters’ src/_portaudiomodule.c:942:17: error: ‘_pyAudio_Stream’ has no member named ‘outputParameters’ src/_portaudiomodule.c:946:15: error: ‘_pyAudio_Stream’ has no member named ‘is_open’ src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_structVersion’: src/_portaudiomodule.c:973:13: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c:981:29: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_inputLatency’: src/_portaudiomodule.c:998:13: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c:1006:33: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_outputLatency’: src/_portaudiomodule.c:1023:13: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c:1031:33: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_sampleRate’: src/_portaudiomodule.c:1048:13: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c:1056:33: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c: In function ‘pa_get_version’: src/_portaudiomodule.c:1168:3: warning: implicit declaration of function ‘Pa_GetVersion’ src/_portaudiomodule.c: In function ‘pa_get_version_text’: src/_portaudiomodule.c:1177:3: warning: implicit declaration of function ‘Pa_GetVersionText’ src/_portaudiomodule.c:1177:3: warning: passing argument 1 of ‘PyString_FromString’ makes pointer from integer without a cast /usr/include/python2.7/stringobject.h:63:24: note: expected ‘const char *’ but argument is of type ‘int’ src/_portaudiomodule.c: In function ‘pa_get_host_api_count’: src/_portaudiomodule.c:1221:3: error: ‘PaHostApiIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1221:3: note: each undeclared identifier is reported only once for each function it appears in src/_portaudiomodule.c:1221:18: error: expected ‘;’ before ‘count’ src/_portaudiomodule.c:1226:3: error: ‘count’ undeclared (first use in this function) src/_portaudiomodule.c:1226:3: warning: implicit declaration of function ‘Pa_GetHostApiCount’ src/_portaudiomodule.c: In function ‘pa_get_default_host_api’: src/_portaudiomodule.c:1248:3: error: ‘PaHostApiIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1248:18: error: expected ‘;’ before ‘index’ src/_portaudiomodule.c:1253:3: warning: implicit declaration of function ‘Pa_GetDefaultHostApi’ src/_portaudiomodule.c:1253:3: error: lvalue required as left operand of assignment src/_portaudiomodule.c:1265:7: warning: passing argument 1 of ‘Pa_GetErrorText’ makes integer from pointer without a cast /usr/include/portaudio.h:93:13: note: expected ‘PaError’ but argument is of type ‘char * (*)(const char *, int)’ src/_portaudiomodule.c:1269:3: warning: passing argument 1 of ‘PyInt_FromLong’ makes integer from pointer without a cast /usr/include/python2.7/intobject.h:38:24: note: expected ‘long int’ but argument is of type ‘char * (*)(const char *, int)’ src/_portaudiomodule.c: In function ‘pa_host_api_type_id_to_host_api_index’: src/_portaudiomodule.c:1275:3: error: ‘PaHostApiTypeId’ undeclared (first use in this function) src/_portaudiomodule.c:1275:19: error: expected ‘;’ before ‘typeid’ src/_portaudiomodule.c:1276:3: error: ‘PaHostApiIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1276:18: error: expected ‘;’ before ‘index’ src/_portaudiomodule.c:1278:37: error: ‘typeid’ undeclared (first use in this function) src/_portaudiomodule.c:1281:3: warning: implicit declaration of function ‘Pa_HostApiTypeIdToHostApiIndex’ src/_portaudiomodule.c:1293:7: warning: passing argument 1 of ‘Pa_GetErrorText’ makes integer from pointer without a cast /usr/include/portaudio.h:93:13: note: expected ‘PaError’ but argument is of type ‘char * (*)(const char *, int)’ src/_portaudiomodule.c:1297:3: warning: passing argument 1 of ‘PyInt_FromLong’ makes integer from pointer without a cast /usr/include/python2.7/intobject.h:38:24: note: expected ‘long int’ but argument is of type ‘char * (*)(const char *, int)’ src/_portaudiomodule.c: In function ‘pa_host_api_device_index_to_device_index’: src/_portaudiomodule.c:1303:3: error: ‘PaHostApiIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1303:18: error: expected ‘;’ before ‘apiIndex’ src/_portaudiomodule.c:1305:3: error: ‘PaDeviceIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1305:17: error: expected ‘;’ before ‘devIndex’ src/_portaudiomodule.c:1308:38: error: ‘apiIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1311:3: error: ‘devIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1311:3: warning: implicit declaration of function ‘Pa_HostApiDeviceIndexToDeviceIndex’ src/_portaudiomodule.c: In function ‘pa_get_host_api_info’: src/_portaudiomodule.c:1332:3: error: ‘PaHostApiIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1332:18: error: expected ‘;’ before ‘index’ src/_portaudiomodule.c:1333:3: error: ‘PaHostApiInfo’ undeclared (first use in this function) src/_portaudiomodule.c:1333:18: error: ‘_info’ undeclared (first use in this function) src/_portaudiomodule.c:1339:27: error: expected expression before ‘)’ token src/_portaudiomodule.c:1345:7: error: ‘paInvalidHostApi’ undeclared (first use in this function) src/_portaudiomodule.c:1350:10: error: ‘_pyAudio_paHostApiInfo’ has no member named ‘apiInfo’ src/_portaudiomodule.c: In function ‘pa_get_device_count’: src/_portaudiomodule.c:1364:3: error: ‘PaDeviceIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1364:17: error: expected ‘;’ before ‘count’ src/_portaudiomodule.c:1369:3: error: ‘count’ undeclared (first use in this function) src/_portaudiomodule.c:1369:3: warning: implicit declaration of function ‘Pa_GetDeviceCount’ src/_portaudiomodule.c: In function ‘pa_get_default_input_device’: src/_portaudiomodule.c:1390:3: error: ‘PaDeviceIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1390:17: error: expected ‘;’ before ‘index’ src/_portaudiomodule.c:1395:3: warning: implicit declaration of function ‘Pa_GetDefaultInputDevice’ src/_portaudiomodule.c:1395:3: error: lvalue required as left operand of assignment src/_portaudiomodule.c:1396:13: warning: comparison between pointer and integer src/_portaudiomodule.c:1409:7: warning: passing argument 1 of ‘Pa_GetErrorText’ makes integer from pointer without a cast /usr/include/portaudio.h:93:13: note: expected ‘PaError’ but argument is of type ‘char * (*)(const char *, int)’ src/_portaudiomodule.c:1413:3: warning: passing argument 1 of ‘PyInt_FromLong’ makes integer from pointer without a cast /usr/include/python2.7/intobject.h:38:24: note: expected ‘long int’ but argument is of type ‘char * (*)(const char *, int)’ src/_portaudiomodule.c: In function ‘pa_get_default_output_device’: src/_portaudiomodule.c:1419:3: error: ‘PaDeviceIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1419:17: error: expected ‘;’ before ‘index’ src/_portaudiomodule.c:1424:3: warning: implicit declaration of function ‘Pa_GetDefaultOutputDevice’ src/_portaudiomodule.c:1424:3: error: lvalue required as left operand of assignment src/_portaudiomodule.c:1425:13: warning: comparison between pointer and integer src/_portaudiomodule.c:1438:7: warning: passing argument 1 of ‘Pa_GetErrorText’ makes integer from pointer without a cast /usr/include/portaudio.h:93:13: note: expected ‘PaError’ but argument is of type ‘char * (*)(const char *, int)’ src/_portaudiomodule.c:1442:3: warning: passing argument 1 of ‘PyInt_FromLong’ makes integer from pointer without a cast /usr/include/python2.7/intobject.h:38:24: note: expected ‘long int’ but argument is of type ‘char * (*)(const char *, int)’ src/_portaudiomodule.c: In function ‘pa_get_device_info’: src/_portaudiomodule.c:1448:3: error: ‘PaDeviceIndex’ undeclared (first use in this function) src/_portaudiomodule.c:1448:17: error: expected ‘;’ before ‘index’ src/_portaudiomodule.c:1455:3: warning: passing argument 1 of ‘Pa_GetDeviceInfo’ makes integer from pointer without a cast /usr/include/portaudio.h:182:21: note: expected ‘PaDeviceID’ but argument is of type ‘char * (*)(const char *, int)’ src/_portaudiomodule.c:1460:30: error: ‘paInvalidDevice’ undeclared (first use in this function) src/_portaudiomodule.c: In function ‘pa_open’: src/_portaudiomodule.c:1601:3: error: ‘PaStreamParameters’ undeclared (first use in this function) src/_portaudiomodule.c:1601:23: error: ‘outputParameters’ undeclared (first use in this function) src/_portaudiomodule.c:1602:23: error: ‘inputParameters’ undeclared (first use in this function) src/_portaudiomodule.c:1606:28: error: expected expression before ‘)’ token src/_portaudiomodule.c:1622:9: error: ‘paInvalidDevice’ undeclared (first use in this function) src/_portaudiomodule.c:1643:28: error: expected expression before ‘)’ token src/_portaudiomodule.c:1679:3: error: ‘PaStreamInfo’ undeclared (first use in this function) src/_portaudiomodule.c:1679:17: error: ‘streamInfo’ undeclared (first use in this function) src/_portaudiomodule.c:1696:9: warning: passing argument 5 of ‘Pa_OpenStream’ makes pointer from integer without a cast /usr/include/portaudio.h:325:9: note: expected ‘void *’ but argument is of type ‘int’ src/_portaudiomodule.c:1696:9: warning: passing argument 7 of ‘Pa_OpenStream’ makes integer from pointer without a cast /usr/include/portaudio.h:325:9: note: expected ‘int’ but argument is of type ‘void *’ src/_portaudiomodule.c:1696:9: warning: passing argument 8 of ‘Pa_OpenStream’ makes integer from pointer without a cast /usr/include/portaudio.h:325:9: note: expected ‘PaSampleFormat’ but argument is of type ‘void *’ src/_portaudiomodule.c:1696:9: error: too few arguments to function ‘Pa_OpenStream’ /usr/include/portaudio.h:325:9: note: declared here src/_portaudiomodule.c:1712:31: error: expected expression before ‘)’ token src/_portaudiomodule.c:1724:15: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’ src/_portaudiomodule.c:1725:15: error: ‘_pyAudio_Stream’ has no member named ‘outputParameters’ src/_portaudiomodule.c:1726:15: error: ‘_pyAudio_Stream’ has no member named ‘is_open’ src/_portaudiomodule.c:1727:15: error: ‘_pyAudio_Stream’ has no member named ‘streamInfo’ src/_portaudiomodule.c: In function ‘pa_is_format_supported’: src/_portaudiomodule.c:1791:3: error: ‘PaStreamParameters’ undeclared (first use in this function) src/_portaudiomodule.c:1791:22: error: expected ‘;’ before ‘inputParams’ src/_portaudiomodule.c:1792:22: error: expected ‘;’ before ‘outputParams’ src/_portaudiomodule.c:1812:5: error: ‘inputParams’ undeclared (first use in this function) src/_portaudiomodule.c:1820:5: error: ‘outputParams’ undeclared (first use in this function) src/_portaudiomodule.c:1827:3: warning: implicit declaration of function ‘Pa_IsFormatSupported’ src/_portaudiomodule.c:1831:16: error: ‘paFormatIsSupported’ undeclared (first use in this function) src/_portaudiomodule.c: In function ‘pa_start_stream’: src/_portaudiomodule.c:1870:16: error: ‘paStreamIsNotStopped’ undeclared (first use in this function) src/_portaudiomodule.c: In function ‘pa_stop_stream’: src/_portaudiomodule.c:1911:16: error: ‘paStreamIsStopped’ undeclared (first use in this function) src/_portaudiomodule.c: In function ‘pa_abort_stream’: src/_portaudiomodule.c:1952:16: error: ‘paStreamIsStopped’ undeclared (first use in this function) src/_portaudiomodule.c: In function ‘pa_is_stream_stopped’: src/_portaudiomodule.c:1994:3: warning: implicit declaration of function ‘Pa_IsStreamStopped’ src/_portaudiomodule.c: In function ‘pa_is_stream_active’: src/_portaudiomodule.c:2039:3: warning: implicit declaration of function ‘Pa_IsStreamActive’ src/_portaudiomodule.c: In function ‘pa_get_stream_time’: src/_portaudiomodule.c:2086:3: warning: implicit declaration of function ‘Pa_GetStreamTime’ src/_portaudiomodule.c: In function ‘pa_get_stream_cpu_load’: src/_portaudiomodule.c:2118:3: warning: implicit declaration of function ‘Pa_GetStreamCpuLoad’ src/_portaudiomodule.c: In function ‘pa_write_stream’: src/_portaudiomodule.c:2167:3: warning: implicit declaration of function ‘Pa_WriteStream’ src/_portaudiomodule.c:2171:16: error: ‘paOutputUnderflowed’ undeclared (first use in this function) src/_portaudiomodule.c: In function ‘pa_read_stream’: src/_portaudiomodule.c:2233:3: error: ‘PaStreamParameters’ undeclared (first use in this function) src/_portaudiomodule.c:2233:23: error: ‘inputParameters’ undeclared (first use in this function) src/_portaudiomodule.c:2233:53: error: ‘_pyAudio_Stream’ has no member named ‘inputParameters’ src/_portaudiomodule.c:2253:3: warning: implicit declaration of function ‘Pa_ReadStream’ src/_portaudiomodule.c:2259:15: error: ‘paInputOverflowed’ undeclared (first use in this function) src/_portaudiomodule.c:2265:22: error: ‘paOutputUnderflowed’ undeclared (first use in this function) src/_portaudiomodule.c: In function ‘pa_get_stream_write_available’: src/_portaudiomodule.c:2309:3: warning: implicit declaration of function ‘Pa_GetStreamWriteAvailable’ src/_portaudiomodule.c: In function ‘pa_get_stream_read_available’: src/_portaudiomodule.c:2334:3: warning: implicit declaration of function ‘Pa_GetStreamReadAvailable’ src/_portaudiomodule.c: In function ‘init_portaudio’: src/_portaudiomodule.c:2384:49: error: ‘paInDevelopment’ undeclared (first use in this function) src/_portaudiomodule.c:2385:47: error: ‘paDirectSound’ undeclared (first use in this function) src/_portaudiomodule.c:2386:39: error: ‘paMME’ undeclared (first use in this function) src/_portaudiomodule.c:2387:40: error: ‘paASIO’ undeclared (first use in this function) src/_portaudiomodule.c:2388:48: error: ‘paSoundManager’ undeclared (first use in this function) src/_portaudiomodule.c:2389:45: error: ‘paCoreAudio’ undeclared (first use in this function) src/_portaudiomodule.c:2390:39: error: ‘paOSS’ undeclared (first use in this function) src/_portaudiomodule.c:2391:40: error: ‘paALSA’ undeclared (first use in this function) src/_portaudiomodule.c:2392:38: error: ‘paAL’ undeclared (first use in this function) src/_portaudiomodule.c:2393:40: error: ‘paBeOS’ undeclared (first use in this function) src/_portaudiomodule.c:2394:41: error: ‘paWDMKS’ undeclared (first use in this function) src/_portaudiomodule.c:2395:40: error: ‘paJACK’ undeclared (first use in this function) src/_portaudiomodule.c:2396:42: error: ‘paWASAPI’ undeclared (first use in this function) src/_portaudiomodule.c:2410:50: error: ‘paNotInitialized’ undeclared (first use in this function) src/_portaudiomodule.c:2412:6: error: ‘paUnanticipatedHostError’ undeclared (first use in this function) src/_portaudiomodule.c:2417:49: error: ‘paInvalidDevice’ undeclared (first use in this function) src/_portaudiomodule.c:2433:6: error: ‘paIncompatibleHostApiSpecificStreamInfo’ undeclared (first use in this function) src/_portaudiomodule.c:2434:51: error: ‘paStreamIsStopped’ undeclared (first use in this function) src/_portaudiomodule.c:2435:54: error: ‘paStreamIsNotStopped’ undeclared (first use in this function) src/_portaudiomodule.c:2436:51: error: ‘paInputOverflowed’ undeclared (first use in this function) src/_portaudiomodule.c:2437:53: error: ‘paOutputUnderflowed’ undeclared (first use in this function) src/_portaudiomodule.c:2438:51: error: ‘paHostApiNotFound’ undeclared (first use in this function) src/_portaudiomodule.c:2439:50: error: ‘paInvalidHostApi’ undeclared (first use in this function) src/_portaudiomodule.c:2441:6: error: ‘paCanNotReadFromACallbackStream’ undeclared (first use in this function) src/_portaudiomodule.c:2443:6: error: ‘paCanNotWriteToACallbackStream’ undeclared (first use in this function) src/_portaudiomodule.c:2445:6: error: ‘paCanNotReadFromAnOutputOnlyStream’ undeclared (first use in this function) src/_portaudiomodule.c:2447:6: error: ‘paCanNotWriteToAnInputOnlyStream’ undeclared (first use in this function) src/_portaudiomodule.c:2449:6: error: ‘paIncompatibleStreamHostApi’ undeclared (first use in this function) src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_defaultOutputDevice’: src/_portaudiomodule.c:552:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_defaultInputDevice’: src/_portaudiomodule.c:538:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_deviceCount’: src/_portaudiomodule.c:524:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_type’: src/_portaudiomodule.c:496:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_structVersion’: src/_portaudiomodule.c:482:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paHostApiInfo_get_name’: src/_portaudiomodule.c:510:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultSampleRate’: src/_portaudiomodule.c:311:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultHighOutputLatency’: src/_portaudiomodule.c:297:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultHighInputLatency’: src/_portaudiomodule.c:283:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultLowOutputLatency’: src/_portaudiomodule.c:268:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_defaultLowInputLatency’: src/_portaudiomodule.c:254:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_paDeviceInfo_get_hostApi’: src/_portaudiomodule.c:212:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_sampleRate’: src/_portaudiomodule.c:1057:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_is_open’: src/_portaudiomodule.c:922:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_outputLatency’: src/_portaudiomodule.c:1032:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_inputLatency’: src/_portaudiomodule.c:1007:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘_pyAudio_Stream_get_structVersion’: src/_portaudiomodule.c:982:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘pa_is_format_supported’: src/_portaudiomodule.c:1841:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘pa_get_device_count’: src/_portaudiomodule.c:1385:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘pa_host_api_device_index_to_device_index’: src/_portaudiomodule.c:1327:1: warning: control reaches end of non-void function src/_portaudiomodule.c: In function ‘pa_get_host_api_count’: src/_portaudiomodule.c:1243:1: warning: control reaches end of non-void function error: Setup script exited with error: command 'gcc' failed with exit status 1
Well, I solved the problem by using the package manager,
$ sudo apt-get install python-pyaudio
Although still has no clue why easy_install fails.
Found an answer at https://groups.google.com/forum/#!msg/pyo-discuss/ptp_m39ACpI/XgKdK8YGNSoJ
sudo apt-get install portaudio19-dev
On ubuntu 13.10 aka Saucy Salamander, I solved the problem by installing libjack-jackd2-dev and portaudio19-dev.
sudo apt-get install libjack-jackd2-dev portaudio19-dev
Then pip install pyaudio
should work.
I found this question after experiencing a similar error on OpenSuse (13.2). So I figured I’d post my solution as well, in case other people find this via Google.
Although libportaudio2 is the package containing the libs, you need portaudio-devel as well to make the installation work.
This is how I get it work:
- brew update (you can ignore this step if your brew is up to date)
- brew install portaudio
- brew link –overwrite portaudio
- sudo python2.7 -m pip install –global-option=’build_ext’ –global-option=’-I/usr/local/include’ –global-option=’-L/usr/local/lib’ pyaudio
I install in my virtualenv. pyaudio (0.2.11)
pip install pyaudio
-> errorsudo apt-get install portaudio19-dev
-> successpip install pyaudio
-> success
On Fedora 27 in order to get pyaudio from a default python3 installation I did the following
sudo dnf install python3-devel
sudo dnf install portaudio-devel
sudo pip3 install pyaudio
Use the following command to install pyaudio
sudo apt-get install python-pyaudio
Had the same problem too. I’m working on a MAC and solved the issue by running these lines of code.
brew install portaudio
pip install pyaudio
This method is working for M1 Macs
This method has successfully worked for me.