我正在运行 Ubuntu 11.04、Python 2.7.1 并想安装 Pyaudio。于是我跑了,
$ sudo easy_install pyaudio
在终端中,进程退出并显示以下错误消息,
搜索 pyaudio 阅读 http://pypi.python.org/simple/pyaudio/ 阅读 http://people.csail.mit.edu/hubert/pyaudio/ 最佳匹配:pyaudio 0.2.4 下载 http://people.csail.mit.edu/hubert/pyaudio/packages/pyaudio-0.2.4.tar.gz 处理pyaudio-0.2.4.tar.gz 运行 PyAudio-0.2.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-0Tetss/PyAudio-0.2.4/egg-dist-tmp-PYy9T8 在 /usr/include/python2.7/Python.h:8:0 包含的文件中, 来自 src/_portaudiomodule.c:30: /usr/include/python2.7/pyconfig.h:1155:0:警告:“_POSIX_C_SOURCE”重新定义 /usr/include/features.h:214:0: 注意:这是前面定义的位置 src/_portaudiomodule.c:31:23:致命错误:portaudio.h:没有这样的文件或目录 编译终止。 错误:安装脚本退出并出现错误:命令“gcc”失败,退出状态为 1
我不确定是在 askubuntu.com 上还是在 stackoveflow 上发布此内容,但无论如何它都在 stackoverflow 中。我也google了一下这个问题,发现通过安装python-dev已经解决了一些问题。我已经安装了 python-dev。可能出了什么问题?
更新
以下是安装 libportaudio-dev 后出现的新错误,
搜索 pyaudio 阅读 http://pypi.python.org/simple/pyaudio/ 阅读 http://people.csail.mit.edu/hubert/pyaudio/ 最佳匹配:pyaudio 0.2.4 下载 http://people.csail.mit.edu/hubert/pyaudio/packages/pyaudio-0.2.4.tar.gz 处理pyaudio-0.2.4.tar.gz 运行 PyAudio-0.2.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-LMpsIy/PyAudio-0.2.4/egg-dist-tmp-AExlqd 在 /usr/include/python2.7/Python.h:8:0 包含的文件中, 来自 src/_portaudiomodule.c:30: /usr/include/python2.7/pyconfig.h:1155:0:警告:“_POSIX_C_SOURCE”重新定义 /usr/include/features.h:214:0: 注意:这是前面定义的位置 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_hostApi”中: src/_portaudiomodule.c:211:38:错误:“PaDeviceInfo”没有名为“hostApi”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultLowInputLatency”中: src/_portaudiomodule.c:253:42:错误:“PaDeviceInfo”没有名为“defaultLowInputLatency”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultLowOutputLatency”中: src/_portaudiomodule.c:267:42:错误:“PaDeviceInfo”没有名为“defaultLowOutputLatency”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultHighInputLatency”中: src/_portaudiomodule.c:282:42:错误:“PaDeviceInfo”没有名为“defaultHighInputLatency”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultHighOutputLatency”中: src/_portaudiomodule.c:296:42:错误:“PaDeviceInfo”没有名为“defaultHighOutputLatency”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultSampleRate”中: src/_portaudiomodule.c:310:42:错误:“PaDeviceInfo”没有名为“defaultSampleRate”的成员 src/_portaudiomodule.c:在顶层: src/_portaudiomodule.c:465:3:错误:“PaHostApiInfo”之前的预期说明符限定符列表 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_structVersion”中: src/_portaudiomodule.c:475:13:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:481:29:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_type”中: src/_portaudiomodule.c:489:13:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:495:36:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_name”中: src/_portaudiomodule.c:503:13:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:503:32:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:509:34:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_deviceCount”中: src/_portaudiomodule.c:517:13:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:523:29:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_defaultInputDevice”中: src/_portaudiomodule.c:531:13:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:537:29:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_defaultOutputDevice”中: src/_portaudiomodule.c:545:13:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:551:29:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_dealloc”中: src/_portaudiomodule.c:569:7:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:在顶层: src/_portaudiomodule.c:910:3:错误:“PaStreamParameters”之前的预期说明符限定符列表 src/_portaudiomodule.c:在函数“_is_open”中: src/_portaudiomodule.c:921:23:错误:“_pyAudio_Stream”没有名为“is_open”的成员 src/_portaudiomodule.c:在函数“_cleanup_Stream_object”中: src/_portaudiomodule.c:932:19:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:933:17:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:935:19:错误:“_pyAudio_Stream”没有名为“inputParameters”的成员 src/_portaudiomodule.c:936:22:错误:“_pyAudio_Stream”没有名为“inputParameters”的成员 src/_portaudiomodule.c:937:17:错误:“_pyAudio_Stream”没有名为“inputParameters”的成员 src/_portaudiomodule.c:940:19:错误:“_pyAudio_Stream”没有名为“outputParameters”的成员 src/_portaudiomodule.c:941:22:错误:“_pyAudio_Stream”没有名为“outputParameters”的成员 src/_portaudiomodule.c:942:17:错误:“_pyAudio_Stream”没有名为“outputParameters”的成员 src/_portaudiomodule.c:946:15:错误:“_pyAudio_Stream”没有名为“is_open”的成员 src/_portaudiomodule.c:在函数“_pyAudio_Stream_get_structVersion”中: src/_portaudiomodule.c:973:13:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:981:29:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:在函数“_pyAudio_Stream_get_inputLatency”中: src/_portaudiomodule.c:998:13:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:1006:33:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:在函数“_pyAudio_Stream_get_outputLatency”中: src/_portaudiomodule.c:1023:13:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:1031:33:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:在函数“_pyAudio_Stream_get_sampleRate”中: src/_portaudiomodule.c:1048:13:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:1056:33:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:在函数“pa_get_version”中: src/_portaudiomodule.c:1168:3:警告:函数“Pa_GetVersion”的隐式声明 src/_portaudiomodule.c:在函数“pa_get_version_text”中: src/_portaudiomodule.c:1177:3:警告:函数“Pa_GetVersionText”的隐式声明 src/_portaudiomodule.c:1177:3:警告:传递 'PyString_FromString' 的参数 1 使指针从整数而不进行强制转换 /usr/include/python2.7/stringobject.h:63:24:注意:预期为“const char *”,但参数的类型为“int” src/_portaudiomodule.c:在函数“pa_get_host_api_count”中: src/_portaudiomodule.c:1221:3: error: 'PaHostApiIndex' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1221:3:注意:每个未声明的标识符对于它出现的每个函数只报告一次 src/_portaudiomodule.c:1221:18: 错误: 预期 ';' 在“计数”之前 src/_portaudiomodule.c:1226:3: error: 'count' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:1226:3:警告:函数“Pa_GetHostApiCount”的隐式声明 src/_portaudiomodule.c:在函数“pa_get_default_host_api”中: src/_portaudiomodule.c:1248:3: error: 'PaHostApiIndex' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1248:18: 错误: 预期 ';' 在“索引”之前 src/_portaudiomodule.c:1253:3:警告:函数“Pa_GetDefaultHostApi”的隐式声明 src/_portaudiomodule.c:1253:3:错误:需要左值作为赋值的左操作数 src/_portaudiomodule.c:1265:7: 警告:传递 'Pa_GetErrorText' 的参数 1 从指针生成整数而不进行强制转换 /usr/include/portaudio.h:93:13:注意:预期为“PaError”,但参数类型为“char * (*)(const char *, int)” src/_portaudiomodule.c:1269:3: 警告:传递 'PyInt_FromLong' 的参数 1 从指针生成整数而不进行强制转换 /usr/include/python2.7/intobject.h:38:24:注意:预期为“long int”,但参数的类型为“char * (*)(const char *, int)” src/_portaudiomodule.c:在函数“pa_host_api_type_id_to_host_api_index”中: src/_portaudiomodule.c:1275:3: error: 'PaHostApiTypeId' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1275:19: 错误: 预期 ';' 在'typeid'之前 src/_portaudiomodule.c:1276:3: error: 'PaHostApiIndex' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1276:18: 错误: 预期 ';' 在“索引”之前 src/_portaudiomodule.c:1278:37: error: 'typeid' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1281:3:警告:函数“Pa_HostApiTypeIdToHostApiIndex”的隐式声明 src/_portaudiomodule.c:1293:7:警告:传递 'Pa_GetErrorText' 的参数 1 从指针生成整数而不进行强制转换 /usr/include/portaudio.h:93:13:注意:预期为“PaError”,但参数类型为“char * (*)(const char *, int)” src/_portaudiomodule.c:1297:3:警告:传递 'PyInt_FromLong' 的参数 1 从指针生成整数而不进行强制转换 /usr/include/python2.7/intobject.h:38:24:注意:预期为“long int”,但参数的类型为“char * (*)(const char *, int)” src/_portaudiomodule.c:在函数“pa_host_api_device_index_to_device_index”中: src/_portaudiomodule.c:1303:3: error: 'PaHostApiIndex' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:1303:18: 错误: 预期 ';' 在“apiIndex”之前 src/_portaudiomodule.c:1305:3: error: 'PaDeviceIndex' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1305:17: 错误: 预期 ';' 在'devIndex'之前 src/_portaudiomodule.c:1308:38: error: 'apiIndex' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:1311:3: error: 'devIndex' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:1311:3:警告:函数“Pa_HostApiDeviceIndexToDeviceIndex”的隐式声明 src/_portaudiomodule.c:在函数“pa_get_host_api_info”中: src/_portaudiomodule.c:1332:3: error: 'PaHostApiIndex' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1332:18: 错误: 预期 ';' 在“索引”之前 src/_portaudiomodule.c:1333:3: error: 'PaHostApiInfo' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1333:18: error: '_info' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:1339:27: 错误: ')' 标记之前的预期表达式 src/_portaudiomodule.c:1345:7: error: 'paInvalidHostApi' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1350:10:错误:“_pyAudio_paHostApiInfo”没有名为“apiInfo”的成员 src/_portaudiomodule.c:在函数“pa_get_device_count”中: src/_portaudiomodule.c:1364:3: error: 'PaDeviceIndex' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1364:17: 错误: 预期 ';' 在“计数”之前 src/_portaudiomodule.c:1369:3: error: 'count' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:1369:3:警告:函数“Pa_GetDeviceCount”的隐式声明 src/_portaudiomodule.c:在函数“pa_get_default_input_device”中: src/_portaudiomodule.c:1390:3: error: 'PaDeviceIndex' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1390:17: 错误: 预期 ';' 在“索引”之前 src/_portaudiomodule.c:1395:3:警告:函数“Pa_GetDefaultInputDevice”的隐式声明 src/_portaudiomodule.c:1395:3:错误:需要左值作为赋值的左操作数 src/_portaudiomodule.c:1396:13:警告:指针和整数之间的比较 src/_portaudiomodule.c:1409:7:警告:传递 'Pa_GetErrorText' 的参数 1 从指针生成整数而不进行强制转换 /usr/include/portaudio.h:93:13:注意:预期为“PaError”,但参数类型为“char * (*)(const char *, int)” src/_portaudiomodule.c:1413:3: 警告:传递 'PyInt_FromLong' 的参数 1 从指针生成整数而不进行强制转换 /usr/include/python2.7/intobject.h:38:24:注意:预期为“long int”,但参数的类型为“char * (*)(const char *, int)” src/_portaudiomodule.c:在函数“pa_get_default_output_device”中: src/_portaudiomodule.c:1419:3: error: 'PaDeviceIndex' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1419:17: 错误: 预期 ';' 在“索引”之前 src/_portaudiomodule.c:1424:3:警告:函数“Pa_GetDefaultOutputDevice”的隐式声明 src/_portaudiomodule.c:1424:3:错误:需要左值作为赋值的左操作数 src/_portaudiomodule.c:1425:13:警告:指针和整数之间的比较 src/_portaudiomodule.c:1438:7:警告:传递 'Pa_GetErrorText' 的参数 1 从指针生成整数而不进行强制转换 /usr/include/portaudio.h:93:13:注意:预期为“PaError”,但参数类型为“char * (*)(const char *, int)” src/_portaudiomodule.c:1442:3: 警告:传递 'PyInt_FromLong' 的参数 1 从指针生成整数而不进行强制转换 /usr/include/python2.7/intobject.h:38:24:注意:预期为“long int”,但参数的类型为“char * (*)(const char *, int)” src/_portaudiomodule.c:在函数“pa_get_device_info”中: src/_portaudiomodule.c:1448:3: error: 'PaDeviceIndex' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1448:17: 错误: 预期 ';' 在“索引”之前 src/_portaudiomodule.c:1455:3: 警告: 传递 'Pa_GetDeviceInfo' 的参数 1 从指针生成整数而不进行强制转换 /usr/include/portaudio.h:182:21:注意:预期为“PaDeviceID”,但参数的类型为“char * (*)(const char *, int)” src/_portaudiomodule.c:1460:30: error: 'paInvalidDevice' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:在函数“pa_open”中: src/_portaudiomodule.c:1601:3: error: 'PaStreamParameters' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1601:23: error: 'outputParameters' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1602:23: error: 'inputParameters' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1606:28: 错误: ')' 标记之前的预期表达式 src/_portaudiomodule.c:1622:9: error: 'paInvalidDevice' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:1643:28: 错误: ')' 标记之前的预期表达式 src/_portaudiomodule.c:1679:3: error: 'PaStreamInfo' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1679:17: error: 'streamInfo' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:1696:9:警告:传递 'Pa_OpenStream' 的参数 5 使指针从整数而不进行强制转换 /usr/include/portaudio.h:325:9:注意:预期为“void *”,但参数的类型为“int” src/_portaudiomodule.c:1696:9: 警告:传递 'Pa_OpenStream' 的参数 7 从指针生成整数而不进行强制转换 /usr/include/portaudio.h:325:9:注意:预期为“int”,但参数的类型为“void *” src/_portaudiomodule.c:1696:9: 警告:传递 'Pa_OpenStream' 的参数 8 从指针生成整数而不进行强制转换 /usr/include/portaudio.h:325:9:注意:预期为“PaSampleFormat”,但参数的类型为“void *” src/_portaudiomodule.c:1696:9:错误:函数“Pa_OpenStream”的参数太少 /usr/include/portaudio.h:325:9:注意:在这里声明 src/_portaudiomodule.c:1712:31: 错误: ')' 标记之前的预期表达式 src/_portaudiomodule.c:1724:15:错误:“_pyAudio_Stream”没有名为“inputParameters”的成员 src/_portaudiomodule.c:1725:15:错误:“_pyAudio_Stream”没有名为“outputParameters”的成员 src/_portaudiomodule.c:1726:15:错误:“_pyAudio_Stream”没有名为“is_open”的成员 src/_portaudiomodule.c:1727:15:错误:“_pyAudio_Stream”没有名为“streamInfo”的成员 src/_portaudiomodule.c:在函数“pa_is_format_supported”中: src/_portaudiomodule.c:1791:3: error: 'PaStreamParameters' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1791:22: 错误: 预期 ';' 在“输入参数”之前 src/_portaudiomodule.c:1792:22: 错误: 预期 ';' 在“输出参数”之前 src/_portaudiomodule.c:1812:5: error: 'inputParams' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:1820:5: error: 'outputParams' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:1827:3:警告:函数“Pa_IsFormatSupported”的隐式声明 src/_portaudiomodule.c:1831:16: error: 'paFormatIsSupported' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:在函数“pa_start_stream”中: src/_portaudiomodule.c:1870:16: error: 'paStreamIsNotStopped' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:在函数“pa_stop_stream”中: src/_portaudiomodule.c:1911:16: error: 'paStreamIsStopped' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:在函数“pa_abort_stream”中: src/_portaudiomodule.c:1952:16: error: 'paStreamIsStopped' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:在函数“pa_is_stream_stopped”中: src/_portaudiomodule.c:1994:3:警告:函数“Pa_IsStreamStopped”的隐式声明 src/_portaudiomodule.c:在函数“pa_is_stream_active”中: src/_portaudiomodule.c:2039:3:警告:函数“Pa_IsStreamActive”的隐式声明 src/_portaudiomodule.c:在函数“pa_get_stream_time”中: src/_portaudiomodule.c:2086:3:警告:函数“Pa_GetStreamTime”的隐式声明 src/_portaudiomodule.c:在函数“pa_get_stream_cpu_load”中: src/_portaudiomodule.c:2118:3:警告:函数“Pa_GetStreamCpuLoad”的隐式声明 src/_portaudiomodule.c:在函数“pa_write_stream”中: src/_portaudiomodule.c:2167:3:警告:函数“Pa_WriteStream”的隐式声明 src/_portaudiomodule.c:2171:16: error: 'paOutputUnderflowed' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:在函数“pa_read_stream”中: src/_portaudiomodule.c:2233:3: error: 'PaStreamParameters' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2233:23: error: 'inputParameters' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2233:53:错误:“_pyAudio_Stream”没有名为“inputParameters”的成员 src/_portaudiomodule.c:2253:3:警告:函数“Pa_ReadStream”的隐式声明 src/_portaudiomodule.c:2259:15: error: 'paInputOverflowed' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2265:22: error: 'paOutputUnderflowed' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:在函数“pa_get_stream_write_available”中: src/_portaudiomodule.c:2309:3:警告:函数“Pa_GetStreamWriteAvailable”的隐式声明 src/_portaudiomodule.c:在函数“pa_get_stream_read_available”中: src/_portaudiomodule.c:2334:3:警告:函数“Pa_GetStreamReadAvailable”的隐式声明 src/_portaudiomodule.c:在函数“init_portaudio”中: src/_portaudiomodule.c:2384:49: error: 'paInDevelopment' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2385:47: error: 'paDirectSound' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2386:39: error: 'paMME' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2387:40: error: 'paASIO' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2388:48: error: 'paSoundManager' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2389:45: error: 'paCoreAudio' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2390:39: error: 'paOSS' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2391:40: error: 'paALSA' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2392:38: error: 'paAL' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2393:40: error: 'paBeOS' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2394:41: error: 'paWDMKS' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2395:40: error: 'paJACK' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2396:42: error: 'paWASAPI' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2410:50: error: 'paNotInitialized' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2412:6: error: 'paUnanticipatedHostError' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2417:49: error: 'paInvalidDevice' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2433:6: error: 'paIncompatibleHostApiSpecificStreamInfo' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2434:51: error: 'paStreamIsStopped' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2435:54: error: 'paStreamIsNotStopped' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2436:51: error: 'paInputOverflowed' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2437:53: error: 'paOutputUnderflowed' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2438:51: error: 'paHostApiNotFound' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2439:50: error: 'paInvalidHostApi' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2441:6: error: 'paCanNotReadFromACallbackStream' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2443:6: error: 'paCanNotWriteToACallbackStream' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:2445:6: error: 'paCanNotReadFromAnOutputOnlyStream' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2447:6: error: 'paCanNotWriteToAnInputOnlyStream' undeclared (第一次在这个函数中使用) src/_portaudiomodule.c:2449:6: error: 'paIncompatibleStreamHostApi' undeclared (首先在这个函数中使用) src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_defaultOutputDevice”中: src/_portaudiomodule.c:552:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_defaultInputDevice”中: src/_portaudiomodule.c:538:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_deviceCount”中: src/_portaudiomodule.c:524:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_type”中: src/_portaudiomodule.c:496:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_structVersion”中: src/_portaudiomodule.c:482:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paHostApiInfo_get_name”中: src/_portaudiomodule.c:510:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultSampleRate”中: src/_portaudiomodule.c:311:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultHighOutputLatency”中: src/_portaudiomodule.c:297:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultHighInputLatency”中: src/_portaudiomodule.c:283:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultLowOutputLatency”中: src/_portaudiomodule.c:268:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_defaultLowInputLatency”中: src/_portaudiomodule.c:254:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_paDeviceInfo_get_hostApi”中: src/_portaudiomodule.c:212:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_Stream_get_sampleRate”中: src/_portaudiomodule.c:1057:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_is_open”中: src/_portaudiomodule.c:922:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_Stream_get_outputLatency”中: src/_portaudiomodule.c:1032:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_Stream_get_inputLatency”中: src/_portaudiomodule.c:1007:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“_pyAudio_Stream_get_structVersion”中: src/_portaudiomodule.c:982:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“pa_is_format_supported”中: src/_portaudiomodule.c:1841:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“pa_get_device_count”中: src/_portaudiomodule.c:1385:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“pa_host_api_device_index_to_device_index”中: src/_portaudiomodule.c:1327:1:警告:控制到达非无效函数的结尾 src/_portaudiomodule.c:在函数“pa_get_host_api_count”中: src/_portaudiomodule.c:1243:1:警告:控制到达非无效函数的结尾 错误:安装脚本退出并出现错误:命令“gcc”失败,退出状态为 1