使用Cygwin在Windows上编译Python扩展
我在编译python扩展时经历了一段糟糕的时光——希望有人能帮上忙 我最初尝试执行“python.exe setup.py build”,但收到错误:“python是在Visual Studio 2003中构建的;扩展必须使用能够生成兼容二进制文件的编译器生成…” 因此,我随后下载了Cygwin,并尝试发送开关'-c mingw32'。控制台中写入了几行代码-然后我收到错误消息:命令'gcc'失败:权限被拒绝 我最初使用VisualStudio2010命令行来实现这一点,但尝试了bash并得到了相同的结果 我花了大量时间研究这个问题,Cygwin似乎使用了gcc和g++的符号链接,windows不知道如何处理这个问题使用Cygwin在Windows上编译Python扩展,python,windows,cygwin,Python,Windows,Cygwin,我在编译python扩展时经历了一段糟糕的时光——希望有人能帮上忙 我最初尝试执行“python.exe setup.py build”,但收到错误:“python是在Visual Studio 2003中构建的;扩展必须使用能够生成兼容二进制文件的编译器生成…” 因此,我随后下载了Cygwin,并尝试发送开关'-c mingw32'。控制台中写入了几行代码-然后我收到错误消息:命令'gcc'失败:权限被拒绝 我最初使用VisualStudio2010命令行来实现这一点,但尝试了bash并得到了
我怎样才能强制setup.py使用gcc-3.exe而不是gcc.exe符号链接?我知道这不雅观,但你可以重命名符号链接并将gcc-3.exe复制到gcc.exe。这在我使用Cygwin的gcc时非常有效。你可能想切换到mingw64-i686(或mingw64-x86_64)打包以获得GCC4.5.3,或者单独安装以在Windows下编译 此外,您还可以在PythonXX\Lib\distutils\distutils.cfg中永久配置distuilts:
[build]
compiler = mingw32
[build_ext]
compiler = mingw32
[build_clib]
compiler = mingw32
我知道这不美观,但您可以重命名符号链接并将gcc-3.exe复制到gcc.exe。这在我使用Cygwin的gcc时对我很有效。您可能希望切换到mingw64-i686(或mingw64-x86_64)包以获得gcc 4.5.3,或者只需单独安装即可在Windows下编译 此外,您还可以在PythonXX\Lib\distutils\distutils.cfg中永久配置distuilts:
[build]
compiler = mingw32
[build_ext]
compiler = mingw32
[build_clib]
compiler = mingw32