error: Unable to find vcvarsall.bat处理解决方法

遇到这个问题的基本都是在学习python的同学们,解决方法如下:

1、安装vs 2008 express或者是相应的2010版本,看软件要求,啊,2008大约1G。
2、使用mingw32,请搜索离线安装包,大约200M,但是不保证能正常用,稳妥起见请用方法1或者方法3
3、请寻找相关软件的 Windows binaries包,哈哈链接在文末,打开网址,按下Ctrl+F,试试运气吧

方法1、请自行搜索下载方法和安装方法,据说vs 2008 express是免费的,只需要填一个微软的登记表,不过,我总不能因为一个包就把更高版本vs更换为2008吧,比如在某些人的电脑上已经安装了vs2012,难不成给他卸载了再安装2008?,不带这么损的

方法2、请自行搜索下载方法和安装方法,离线包应该有几个下载地址的,不过我以前下载的是完整离线包

python setup.py build
build居然报错:
error: Unable to find vcvarsall.bat
说明你正在安装的包不是纯python的,还有部分c代码!  vcvarsall.bat是用来配置vc编译环境的,我有装vs2012,按道理我是有的。可是。。。。。。。
经过在google上爬山涉水,终于在stackoverflow上发现原因了
http://stackoverflow.com/questions/3047542/building-lxml-for-python-2-7-on-windows/5122521#5122521
原因就是。。。。。。。。。。。。。。
python的windows版都是用vs2008编译的,只有vs2008的环境变量能用。如果换编译器来编译模块,可能会不正常工作。
其实只需要强制换用其他编译环境就好,譬如官网说可以用mingw来代替:
python setup.py build --force -c mingw32
python setup.py install --force --skip-build
不过,我在使用这个方法的时候发生了其他错误,我我我我我很无语呀,所以我直接投奔方法3了

首先安装MinGW,在MinGW的安装目录下找到bin的文件夹,找到mingw32-make.exe,复制一份更名为make.exe;
把MinGW的路径添加到环境变量path中,比如我把MinGW安装到D:\MinGW\中,就把D:\MinGW\bin添加到path中;
打开命令行窗口,在命令行窗口中进入到要安装代码的目录下;
输入如下命令就可以安装了。
setup.py install build --compiler=mingw32
python setup.py build --force -c mingw32
python setup.py install --force --skip-build

上面这些斜体是copy的,未经作者允许,我没找到原始作者,不好意思啦

方法3  pip安装本地文件/pip安装whl文件

"Wheel" is a built, archive format that can greatly speed installation compared to building and installing from source archives.
wheel / whl是一个比从原始代码开始编译、安装速度快很多的编译好的打包格式。
Pip prefers Wheels where they are available.
pip安装包的时候优先使用wheel / whl包。
If no satisfactory wheels are found, pip will default to finding source archives.
如果没有合适的wheel / whl 包,pip将默认的查找源代码。(并且开始下载,编译(如果需要的话),安装) 。
To install directly from a wheel archive:
安装wheel / whl包使用下面这句代码(请在包所在的文件夹打开命令行;下面的代码请替换文件名):
pip install SomePackage-1.0-py2.py3-none-any.whl
推荐一个Windows binaries下载的网址,不保证永久有效:
http://www.lfd.uci.edu/~gohlke/pythonlibs/
如果进去一头雾水的话,请翻来覆去的重读本文,再不懂的话,我觉得吧,打开网页娱乐娱乐比较适合你

版权声明:
作者:xinyu2ru
链接:https://www.rxx0.com/motion/error-unable-to-find-vcvarsall-bat-chu-li-jie-jue-fang-fa.html
来源:RUBLOG-分享我的生活
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>