2011-05-07 10 views
30

Estoy ejecutando Ubuntu 11.04, Python 2.7.1 y quería instalar Pyaudio. Así que corrí,Error de instalación de Pyaudio - 'comando' gcc 'falló con el estado de salida 1'

$ sudo easy_install pyaudio

en el terminal y el proceso finalizó con mensajes de error siguientes,

 
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 

No estaba segura de si se debe publicar esto en askubuntu.com o aquí en stackoveflow, pero de todos modos aquí está en stackoverflow. También investigué un poco esta pregunta y encontré que al instalar python-dev he resuelto el problema para algunos. Ya he instalado python-dev. ¿Qué pudo haber salido mal?

ACTUALIZACIÓN

Los siguientes son los nuevos errores que recibo después de instalar 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 

Respuesta

28

Bueno, resuelto el problema utilizando el gestor de paquetes,

 $ sudo apt-get install python-pyaudio

Aunque todavía no tiene idea de por qué easy_install falla.

+0

El método más fácil de instalar. Parece que PIP y easy_install no pueden instalar las dependencias de origen de C. – htmldrum

+5

Por lo general, esta no es una solución recomendada. En este caso, el paquete del sistema pyaudio y el paquete pip están actualizados, pero por lo general el paquete del sistema es antiguo y con errores. La instalación de los paquetes del sistema dependientes y luego la instalación con easy_install o pip (como explican las soluciones a continuación), generalmente resulta en una mejor instalación. – Cerin

0

Instalar PortAudio-dev o lo que sea así.

+0

Instalé libportaudio-dev justo ahora y volví a ejecutar el pyaudio ins talacion Ahora estoy recibiendo un enjambre de otros mensajes de error. Tal vez algunos problemas de dependencia? ¿Puedes decirnos por favor a qué se refiere el otro "qué"? – Dananjaya

+0

No sin los mensajes de error ... –

+6

Intenté 'apt-get install whatnot' ... no funcionó. – ferrouswheel

63

encontrado una respuesta en https://groups.google.com/forum/#!msg/pyo-discuss/ptp_m39ACpI/XgKdK8YGNSoJ

sudo apt-get install portaudio19-dev 
+1

Al menos en mi Ubuntu 14.04, esto da como resultado una queja de apt-get sobre la ruptura del paquete. Sospecho que hay una dependencia rota implicada ya que esta respuesta funciona: http://stackoverflow.com/a/21801632/865169 (incluyendo 'libjack-jackd2-dev'). –

21

en Ubuntu 13.10 aka Saucy Salamander, I solucionó el problema mediante la instalación de libjack-jackd2-dev y portaudio19-dev.

sudo apt-get install libjack-jackd2-dev portaudio19-dev 

Entonces pip install pyaudio debería funcionar.

1

Encontré esta pregunta después de experimentar un error similar en OpenSuse (13.2). Así que pensé que publicaría mi solución también, en caso de que otras personas encuentren esto a través de Google.

Aunque libportaudio2 es el paquete que contiene las librerías, también necesita portaudio-devel para que la instalación funcione.

3

Esto es cómo consigo que funcione:

  1. actualización de café (puede omitir este paso si su cerveza es hasta la fecha)
  2. cerveza instalar PortAudio enlace
  3. cerveza PortAudio --overwrite
  4. sudo python2.7 -m instalación de pip --global-option = 'build_ext' --global-option = '- I/usr/local/include' --global-option = '- L/usr/local/lib 'pyaudio
5

lo instalo en mi virtualenv. pyaudio (0.2.11)

  1. pip install pyaudio -> error
  2. sudo apt-get install portaudio19-dev -> éxito
  3. pip install pyaudio -> éxito
+1

Ya mencionado dos veces con más explicaciones. –

0

En Fedora 27 con el fin de obtener pyaudio de una instalación python3 predeterminado hice lo siguiente

sudo dnf install python3-devel 
sudo dnf install portaudio-devel 
sudo pip3 install pyaudio 
Cuestiones relacionadas