1

我对 python 到 C 代码的翻译和进一步编译有疑问。

首先,我安装了MinGW,写了`setup.py? 脚本并使用 Cython 将 python 代码(最简单的 helloworld)翻译成 C:

python setup.py build_ext --inplace

然后我尝试编译生成的 .c 文件:

gcc.exe helloworld.c -mdll -IC:\Python27\include -IC:\Python27\PC -LC:\Python27\libs -LC:\Python27\PCbuild -lpython27 -lmsvcr90

编译过程中没有发生错误,但是当我尝试启动生成的a.exe文件时,出现以下错误:

a.exe 不是有效的 Win32 应用程序

我不知道如何解决这个问题。
我正在运行 32 位 Vista。
PS对不起我的英语不好。

4

2 回答 2

2

有关使用 Cython创建独立可执行文件的信息,请参阅嵌入 Cython上的 Cython wiki

于 2012-05-25T18:59:01.310 回答
2

编译后的文件不是可执行文件,它是一个库 ( dll)。

Windows 上的 python 模块通常具有.pyd扩展名,因此要么将文件重命名为,要么helloworld.pyd用作-o helloworld.pyd编译器的参数。

那么你应该能够import helloworld从python。

于 2012-05-25T19:10:11.390 回答