今天遇到了這個方面的問題,目前找到兩種辦法。一種是換編譯器如mingw,另一種是裝vc。第一種方法沒成功,現在正在等第二種。
第一種:
首先安裝MinGW;
把MinGW的路徑添加到環境變量path中,比如MinGW安裝在D:\MinGW\中,就把D:\MinGW\bin添加到path中;
打開命令行窗口,在命令行窗口中進入到要安裝代碼的目錄下;
輸入如下命令就可以安裝了。setup.py install build --compiler=mingw32
第二種:
今天在安裝pyscopg2庫的時候出現Unable to find vcvarsall.bat錯誤,在網上找了一會兒,有人說是要裝mingw來解決,我試了,但是不行后來找到另一種解決辦法:
1、到http://www.microsoft.com/express/Downloads/#2008-Visual-CPP去下載visual c++ 2008 express edition
2、然后安裝,之后再重新python setup.py install就好了
這個應該是個通用的方法,假如你在安裝其他庫的時候也遇到 Unable to find vcvarsall.bat錯誤的時候,應該也可以解決
我的以上方法都不管用,看到stackoverflow有一種方法:
For Windows installations:
While running setup.py for package installations Python 2.7 searches for an installed Visual Studio 2008. You can trick Python to use a newer Visual Studio by setting the correct path in VS90COMNTOOLS environment variable before calling setup.py
.
If you have Visual Studio 2010 installed, execute
SET VS90COMNTOOLS=%VS100COMNTOOLS%
or with Visual Studio 2012 installed
SET VS90COMNTOOLS=%VS110COMNTOOLS%
我的是vs2010,在cmd下設置一下變量就可以了。
python 2.7在setup的時候查找的是VS2008編譯的。果你電腦上沒有這個版本的話,比如只有:
1.Visual
Studio
2010
,在cmd里面執行:
SET
VS90COMNTOOLS
=
%
VS100COMNTOOLS
%
2.
Visual Studio
2012
的話:
SET
VS90COMNTOOLS
=
%
VS110COMNTOOLS
%
以此類推:
3.
Visual Studio
2013
的話:
SET
VS90COMNTOOLS
=
%
VS120COMNTOOLS
%
4.
Visual Studio
2003
的話:
SET
VS90COMNTOOLS
=
%
VS80COMNTOOLS
%
更多參考:http://www.biaodianfu.com/python-error-unable-to-find-vcvarsall-bat.html
http://stackoverflow.com/questions/2817869/error-unable-to-find-vcvarsall-bat