Python中使用MinGW编译C++扩展

2018-07-06 18:08:54 浏览数 (1)

Python中可以使用

python setup.py build -c mingw32 install

安装包含C 扩展的第三方库,但需要先安装MinGW 5.1.4及以后版本,并将C:MinGWbin目录加入到环境变量。

安装过程中可能会出现以下错误:

  • gcc: error: unrecognized command line option ‘-mno-cygwin’ 解决方法:修改C:Python27Libdistutilscygwinccompiler.py文件,去掉里面出现的-mno-cygwin
  • undefined reference to ‘_imp__PyExc_TypeError’ 解决方法:
    1. 在MinGW中安装pexports工具
    2. 执行命令 pexports C:WindowsSysWOW64python27.dll > python27.def,在当前目录下生成python27.def文件
    3. 执行命令 dlltool –dllname python27.dll –def python27.def –output-lib libpython27.a,在当前目录下生成libpython27.a文件,并移动到C:Python27libs目录中

0 人点赞