windows下 Cython 编译成独立运行的exe程序

首先用Cython生成 C 代码:

py -3 -m cython main.py

然后用cl 、link 命令生成exe

cl.exe /c  /nologo /Ox /MD /W3 /GS- /DNDEBUG -IE:\Soft\Python\Python36-32\include  /Tcmain.c

link main.obj /SUBSYSTEM:CONSOLE /MACHINE:X86 /LIBPATH:E:\Soft\Python\Python36-32\libs

如果没有报错的话,就OK了

我这里用的python3 测试的sciter程序,因为是gui程序,有个黑框很不好看,但试图vs编译去黑框没有成功……

cl.exe  /nologo /Ox /MD /W3 /WL /GS- /DNDEBUG -IE:\Soft\Python\Python36-32\include  /Tcmain.c /link /SUBSYSTEM:WINDOWS /MACHINE:X86 /LIBPATH:E:\Soft\Python\Python36-32\libs

提示出错:

MSVCRT.lib(exe_winmain.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 "int __cdecl __scrt_common_main_seh(void)" (?__scrt_common_main_seh@@YAHXZ) 中被引用

因为C语言水平几乎为零,网上寻找VS编译方法也是没有结果,但是找到GCC编译的方法

gcc -o main.exe main.c -I E:\Soft\Python\Python36-32\include  -L E:\Soft\Python\Python36-32\libs -lpython36 -municode -Wl,--subsystem,windows

希望对大家有帮助!
如果大家谁知道了vs下的去黑框的方法请邮件我,谢谢*(eecoor # qq.com)

你可能感兴趣的:(windows下 Cython 编译成独立运行的exe程序)