python – 使用Visual C编译器的Cython?

一旦我使用Cython生成C文件,我如何使用Visual C 2010编译器来生成EXE?

我试过了

cython.py Temp.py
cl.exe /MD /I "%ProgramFiles%\Python 2.6\include" Temp.c /link
     /LibPath:"%ProgramFiles%\Python 2.6\libs"

但它说

LINK : fatal error LNK1561: entry point must be defined

如果我将/ MD选项更改为/ MT,那么我将获得GetTemp.c

LIBCMT.lib(crt0.obj) : error LNK2019:
  unresolved external symbol main referenced in function __tmainCRTStartup

最佳答案 默认情况下,Cython不会为可执行文件生成代码,而是为Python模块生成代码.例如,它生成init< modulename>()函数,但不生成main().这可以通过提供–embed选项来更改,如
Embedding Cython中所述.

另请参阅:Can Cython compile to an EXE? – 一个答案甚至给出了如何使用VC进行操作的示例.

点赞