背景
要做毕业设计了,在网上找到了一些关于人脸识别的代码。要运行这些代码,就需要安装一些Python的库。
过程
pip 是Python用于管理包的工具,可以在cmd中用命令pip install ***来安装一些包。
输入命令
pip install opencv-python
pip install scikit-image
pip install dlib
结果安装dlib的过程中出现了错误,让我更新我的VS2015
于是我卸载了VS2015,安装了最新的VS2019。
在配置VS的环境变量,使cmd能够使用cl命令的过程中,发现C:\Program Files (x86)\Windows Kits目录下并没有网上说的“10”这个文件夹,我到网上查了一下,说是VS2019不太支持SDK10,而且在安装VS2019过程中没有勾选上SDK10。
在一番尝试无果后,无奈卸载掉了VS2019,安装VS2017。
是在官网下载的2017社区版15.9
Visual Studio Community 2017 (version 15.9)
在安装VS2017的过程中,弹窗报错找不到vs_runtimeMinimum_x64.msi
点OK是重试,点cancel安装过程会继续,安装结束后显示出现严重错误。去配置环境,发现C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC目录下只有一个文件夹,没有“Tools”这个文件夹(果然是严重错误),或者点击browse
在C:\ProgramData\Package Cache里可以搜到vs_runtimeMinimum_x86.msi这个文件,但是选择了点击OK后显示需要的是14.0.24516.0版本,而这个本地的vs_runtimeMinimum_x86.msi文件并不是14.0.24516.0这个版本。
在网上不停查了一天,不断尝试安装卸载,终于找到了14.0.24516.0版本的VC++:
http://bbs.pcbeta.com/forum.php?mod=viewthread&tid=1720763&ordertype=1
安装过程只能一键自动安装也不知道安到了哪里,问题还是没有解决。
思考可能是因为各种VC++版本杂乱,之前卸载的一些文件没有删除干净,下载了Revo Uninstaller Pro用于卸载软件,Windows Installer Clean Up用于删除在卸载软件后残留的msi文件,在Windows Installer Clean Up这个软件中果然发现了好几个名字都是vs_runtimeMinimum_x86.msi但是版本号不同的文件,删除干净重新安装了14.0.24516版本的VC++。
再次尝试安装VS2017,还是出现了弹窗找不到vs_runtimeMinimum_x86.msi,但是这一次,我在C:\ProgramData\Package Cache文件夹下可以搜索到需要的版本的该文件,点击OK后继续安装过程,结果后续过程中又出现了找不到vs_runtimeAdditional_x86.msi…仔细阅读了安装失败后的日志文件,日志中显示三个error:
[1990:3788][2020-05-01T22:11:04]e000: Error 0x80070643: Failed to install MSI package.
[1990:3788][2020-05-01T22:11:04]e000: Error 0x80070643: Failed to execute MSI package.
[14B4:2BA0][2020-05-01T22:11:04]e000: Error 0x80070643: Failed to configure per-machine MSI package.
尝试了一下这个答案
https://zhidao.baidu.com/question/177839581600652004.html
将注册表中的该权限改成了最大权限,依然没有解决问题…
下面就到了最神奇的地方,在我不断尝试了两天,自暴自弃几乎放弃的情况下,玩了一上午游戏之后,又尝试了一下VS2017的修复,结果什么弹窗都没有出现,顺利修复结束提示进行重启电脑。
重启电脑之后,打开程序和功能看了一下,发现VC++2017不是我自己安装的14.0.24516,而是14.16.27033…不太明白是什么原因,
然后配置VS2017的环境变量,调用cl成功
使用pip安装dlib库成功!
感谢
要特别感谢Revo Uninstaller Pro软件,因为在之前的过程中,我按网上的教程多次卸载安装VC++的各种版本,导致文件杂乱,不能通过软件自带的卸载器成功卸载VC++,在卸载的过程中也弹出找不到vc_runtimeMinimum_x86.msi的窗口,通过这个软件就可以进行卸载(先调用自带卸载器失败后,扫描注册表和目录文件夹,卸载残余文件)
还要感谢Windows Installer Clean Up这款软件,可以卸载残留msi文件,下载链接http://fastsoft.onlinedown.net/down/Windows27518.exe
这两个软件我都是在网上找到的,但是不要相信那种:下载下来是一个下载器,而且给你默认勾选安装许多软件的东西,很可能安装了一个软件,给你带了一个大礼包。。。
endl;