在windows 7 64bit下编译PIL

1. 下载并安装vc 2008 expression[1].

--为什么不用mingw:windows对vc支持会好一些,而且python的windows版本也是用vc编译的.

--为什么不用vc 2010:因为python 2.7是使用vc 2008编译的,如果module不用相同的版本编译的话不能工作.可以参考python邮件组的邮件[2].

2. 下载并安装python2.7 64bit.

3.安装The Windows SDK for Windows 7 and .NET Framework 3.5 SP1[3],因为vc 2008 expression不包含64位编译器.

4.添加环境变量D:\Python27\;D:\Python27\Script

5:python setup.py build; python setup.py install.

出现的问题:

1:error: Unable to find vcvarsall.bat

可以通过安装vc 9.0(见步骤1)或者安装mingw并使用--compiler参数指定编译器解决[4].

2:ValueError: [u'path']

其实还是找不到vcvarsall.bat文件,把

C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars64.bat

复制到

C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64\vcvarsamd64.bat

就可以了.distutil只会去这个目录下找64位的文件[6].

1: http://www.microsoft.com/visualstudio/en-us/products/2008-editions/express

2:http://mail.python.org/pipermail/python-list/2010-April/1242706.html

3:http://pypi.python.org/pypi/setuptools#windows

4:http://www.microsoft.com/download/en/confirmation.aspx?id=3138

5:http://stackoverflow.com/questions/2817869/error-unable-to-find-vcvarsall-bat

6:http://bugs.python.org/issue7511

原文地址:https://www.cnblogs.com/triStoneL/p/2322985.html