Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools
当我们安装绝大部分python包的时候可以通过pip install 或者 conda install解决,但是任然有些包是安装不了的,比如我的就会报Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools 这样的错误。
**更新:**2023/7/27: 很多报上面错误的包如果按照下文的方法不能解决,请尝试:
conda install -c conda-forge 包名称
例如我的环境报错:ERROR: Could not build wheels for pycocotools, lap, which is required to install pyproject.toml-base,报错提示又暗含Microsoft Visual C++ 14.0 is required,似乎下文的方法无法解决,按照conda install -c conda-forge 包名称 即可轻松搞定。
1、直接说解决方法
conda install libpython m2w64-toolchain -c msys2
下载这个包可以解决C++依赖的问题,而不用向网上绝大数博客你抄我我抄你一样要下载个visual studio,那么大的空间真的是不值得。其实换种思维想一下,报这个错误肯定缺少有个类似的环境,可visual studio是用来解决大的工程项目的,的确包含这种环境的,但是杀鸡焉用牛刀,安装好了也不用真是浪费。备注:conda是一个包管理器,可以使用anacoda安装,比较臃肿,也可以直接安装,尝试使用pip安装失败,有大佬使用pip安装成功可以留言。
如果有安装慢或者不能安装的小伙伴可以尝试进行conda换源,我目前在windows系统使用的源如下:(存储于.condarc文件)
channels:
- defaults
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
ssl_verify: true
在评论区看到Windows安装pycocotools 库这个方法不管用,亲测的确不管用,但是看到另外一种安装方法是有效的:参考博客:windows安装pycocotools 库
conda install -c conda-forge pycocotools
2、总结python安装包(库)过程中的采坑:
- 绝大数的包比如numpy、pandas可以用pip install 或者conda install 解决,使用pip时可以用pip -V命令看一下自己的pip安装在了哪个虚拟环境,一般pip安装在哪默认就把python包安装在哪。
- (pip install -i https://pypi.tuna.tsinghua.edu.cn/simple +包名称)一般是我最常使用的安装包方法,即用清华镜像源,常用的包都已安装。
- 一般提示numpy、matplotlib、pandas、scipy、opencv-python、sklearn等等这些包的版本错误不用麻烦了,以前看到网上什么要这个版本和那个版本匹配,我一般直接把那个不匹配的版本直接pip uninstall 卸载了使用方法2或者conda install 重新安装,他们会自动帮你匹配,建议使用方法2,因为conda 会帮你乱卸载或者安装一大堆东西。
- 如果上面的方法没有解决,那么你再到网上看看博客里的版本对应,安装指定版本的包试试看,无非就是:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名称==版本号,不匹配就pip uninstall 卸载,再试试其他版本,也许就成了呢!
- 最后一条方法:可以试着手动取安装对应的包,也许很多初学者不习惯,但是其实很简单。
(1) 下载后缀为 .whl的文件,下载地址为:
https://www.lfd.uci.edu/~gohlke/pythonlibs/
https://pypi.org/
就和查字典一样找到对应的版本然后下载,将文件放在D盘(或者你的文件位置)里
(2) 进入cmd 界面,首先使用cd命令进入D盘(或者你的文件位置)里:cd D: ,之后使用pip install +你刚才下载的文件的全称(包括后缀) ,如果你有多个虚拟环境,记得先切换进去,用pip -V 查看一下pip的安装位置。
6.如果网上的一些中文教程解决不了问题,可以试着在谷歌上搜一下,那里一般技术答疑更多一点,比如我的这个问题就是在:https://stackoverflow.com/questions/44951456/pip-error-microsoft-visual-c-14-0-is-required 这个网址搜到的(不是我想出来的,我只是个菜鸡)
7、设置默认的pip安装源:这样以后直接就可以pip install 默认清华源了
python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
8、conda search是个好东西,只要conda 源设置正确可以省去很多查找包版本匹配不匹配的问题,参考:conda 的妙用
3、补充
其他的好像也暂时想不到了,被这个问题折磨了一晚上,听舍友大佬说如果使用linux应该不会出现这种问题,只是习惯了windows,还有些要紧工作要做,有时间就把windows卸载了,哈哈,浪费时间。
4、备注
在解决Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools这个问题时我在使用 conda install libpython m2w64-toolchain -c msys2 之后就没有这个问题了,但是是使用已经下载好的 .whl包来进行pip安装,想来在线安装应该也没啥问题。