使用Cygwin在Windows上编译Python扩展

时间:2011-11-19 12:56:25

标签: python windows cygwin

我一直在努力编译python扩展程序 - 希望有人可以提供帮助。

我最初尝试执行'python.exe setup.py build'但收到错误:'Python是构建的Visual Studio 2003;扩展必须使用可以生成兼容二进制文件的编译器构建......“。

然后我下载了Cygwin,并尝试发送开关'-c mingw32'。几行写入控制台 - 然后我收到错误消息:命令'gcc'失败:权限被拒绝。

我最初使用Visual Studio 2010命令行来执行此操作,但尝试使用bash并获得相同的结果。

我花了相当多的时间研究这个问题,看来Cygwin使用符号链接来表示gcc和g ++,而windows并不了解如何处理这个问题。

我如何强制setup.py使用gcc-3.exe而不是gcc.exe符号链接?

1 个答案:

答案 0 :(得分:3)

我知道它不够优雅,但您可以重命名符号链接并将gcc-3.exe复制到gcc.exe。当我使用Cygwin的gcc时,这对我有用。您可能希望切换到mingw64-i686(或mingw64-x86_64)软件包以获取gcc 4.5.3,或者单独安装MinGW-w64以便在Windows下进行编译。

此外,您可以在PythonXX \ Lib \ distutils \ distutils.cfg中永久配置distuilts:

[build]
compiler = mingw32

[build_ext]
compiler = mingw32

[build_clib]
compiler = mingw32