在Windows下用MinGW编译Python扩展模块

在Windows下用MinGW编译Python扩展模块

作者: gashero

测试使用VC++ 2003 Toolkit并不顺利,所以先用这个MinGW,似乎还不错。

MinGW的安装

我的是gcc 3.2.3的解压缩包,解压后设置PATH就可以用了。

构建

可以直接在构建命令上指定编译器来运行:

python setup.py build -c mingw32
python setup.py build -compiler=mingw32

两种命令都相同。编译完成后可以在 \build\lib.win32-2.4 看到得到的*.pyd文件。把这个文件复制到site-packages就可以用了。

还可以在setup.py所在目录下新建一个setup.cfg文件,指定默认的编译器为MinGW。同时在构建Windows二进制安装包时也需要用这种方法来指定默认编译器。内容如下:

[build]
compiler=mingw32

制作二进制安装包

如上方法指定默认编译器为MinGW之后,使用命令:

python setup.py bdist_wininst

来生成Windows二进制安装包,新生成的二进制安装包在 dist\ 目录下。

一般来说这个安装包在各类Windows系统上双击安装,一路Next下去就可以了。最终会在Python安装目录生成一个卸载用的可执行文件,并且把软件包安装到site-packages目录下。

Leave a Reply