安装 setuptools 出现 UnicodeDecodeError
文件 Lib/mimetypes.py 中的 bug, 通过以下 patch 修复:
Index: Lib/mimetypes.py =================================================================== --- Lib/mimetypes.py (revision 85786) +++ Lib/mimetypes.py (working copy) @@ -27,6 +27,7 @@ import sys import posixpath import urllib +from itertools import count try: import _winreg except ImportError: @@ -239,19 +240,11 @@ return def enum_types(mimedb): - i = 0 - while True: + for i in count(): try: - ctype = _winreg.EnumKey(mimedb, i) + yield _winreg.EnumKey(mimedb, i) except EnvironmentError: break - try: - ctype = ctype.encode(default_encoding) # omit in 3.x! - except UnicodeEncodeError: - pass - else: - yield ctype - i += 1 default_encoding = sys.getdefaultencoding() with _winreg.OpenKey(_winreg.HKEY_CLASSES_ROOT,
error: Unable to find vcvarsall.bat
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 (Visual Studio Version 11)
SET VS90COMNTOOLS=%VS110COMNTOOLS%
or with Visual Studio 2013 installed (Visual Studio Version 12)
SET VS90COMNTOOLS=%VS120COMNTOOLS%