我不是一个Windows用户通常,但我需要从我的Python代码构buildEXE的,所以我想用py2exe来做到这一点。 我有一个XP系统,我安装了Python 2.6.6。 我下载了py2exe-0.6.9源码,但是当我尝试安装时(通过“python setup.py install”),我收到错误“Unable to find vcvarsall.bat”。 我search了一下 ,发现这个post里有一位受访者build议在这里安装一个MinGW GCC二进制文件的定制版本。 我这样做,现在当我尝试安装py2exe我得到一个新的错误。 这是输出:
C:\Documents and Settings\Administrator\Desktop\py2exe-0.6.9>python setup.py install C:\Documents and Settings\Administrator\Desktop\py2exe-0.6.9\py2exe\build_exe.py:16: DeprecationWarning: the sets module is deprecated import sets running install running build running build_py running build_ext building '_memimporter' extension creating build\temp.win32-2.6 creating build\temp.win32-2.6\Release creating build\temp.win32-2.6\Release\source c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -DPYTHONDLL=\"PYTHON26.DLL\" -DPYTHONCOM=\"pythoncom26.dll\" -IC:\Python26\include -IC:\Python26\PC -c source/MemoryModule.c -o build\temp.win32-2.6\Release\source\memorymodule.o source/MemoryModule.c:30: warning: ignoring #pragma warning source/MemoryModule.c: In function 'BuildImportTable': source/MemoryModule.c:364: warning: pointer targets in passing argument 1 of 'MyLoadLibrary' differ in signedness source/MemoryModule.c: In function 'GetNameTable': source/MemoryModule.c:610: warning: passing argument 4 of 'qsort' from incompatible pointer type source/MemoryModule.c: In function 'MemoryGetProcAddress': source/MemoryModule.c:637: warning: passing argument 5 of 'bsearch' from incompatible pointer type c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -DPYTHONDLL=\"PYTHON26.DLL\" -DPYTHONCOM=\"pythoncom26.dll\" -IC:\Python26\include -IC:\Python26\PC -c source/_memimporter_module.c -o build\temp.win32-2.6\Release\source\_memimporter_module.o In file included from source/_memimporter.c:8, from source/_memimporter_module.c:2: source/Python-version.h:13: error: redefinition of typedef 'Py_ssize_t' C:\Python26\include/pyport.h:115: error: previous declaration of 'Py_ssize_t' was here error: command 'gcc' failed with exit status 1