VisualStudio2019的python3.7环境安装PyAudio失败的解决办法
遇到的问题1
做语音处理时,看到Microsoft发布的VisualStudio2019支持python后,想试一下,结果在Python环境的包(PyPI)管理中安装PyAudio时,提示如下错误。
error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools”: https://visualstudio.microsoft.com/downloads/ |
---|
遇到问题2
想用Python的pip命令安装PyAudio,发现命令提示符里pip命令无法识别。想进入Python使用easy_install 安装pip,发现出现同样的错误。
问题2是环境变量的原因
后来发现因为我的VisualStudio安装在D盘,而Python是安装VisualStudio时,VisualStudio自动安装的版本,所以Python的主程序被安装在了D:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64里,pip.exe和easy_install.exe都被放在了D:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\Scripts下面,都没有被设置为系统的环境变量,所以系统无法识别pip和easy_install指令。
于是,将D:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\Scripts添加到系统环境变量里。pip install xxx就可以用了。
但是使用python 的pip install PyAudio,同样出现第一个问题。
error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools”: https://visualstudio.microsoft.com/downloads/ |
---|
原因是PyAudio还不支持Python3.7的版本。
最终解决
后来发现通过whl文件下载网站 https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudio 下载对应python版本的whl文件,可以解决这个问题(这里面cp37是python3.7用的,win_amd64是64位用的,win32是32位用的,所以我应该下载第三个)。
下载完成后,在命令提示符下,使用pip install PyAudio-0.2.11-cp37-cp37m-win_amd64.whl,终于安装成功。期间嫌PyAudio的文件名太长,删除了一些,发现提示“该文件不是whl文件”,把名字改为原文件名后才能安装成功。whl文件必须使用原文件名安装。
至此,问题解决。