【问题标题】:Compiling with Cython on Windows: missing source filename在 Windows 上使用 Cython 编译:缺少源文件名
【发布时间】:2017-05-25 01:55:33
【问题描述】:

我正在尝试在 Windows 10 上使用 Cython 编译一个 hello world 示例。 我有视觉工作室 2015 社区。 Python 3.5.2

我的 setup.py 看起来像这样:

from distutils.core import setup
from Cython.Build import cythonize

setup (
   name='print hello world',
   ext_modules=cythonize("print_h_w.pyx", compiler_directives=
   {'language_level': 3}),
)

我要编译的文件如下所示:

print('Hello World')

我用这个命令构建:

python setup.py build_ext --inplace

我不断收到此错误:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe 
/c /nologo /Ox /W3 /GL /DNDEBUG /MD -
IC:\Users\Paul\AppData\Local\Programs\Python\Python35\include -
IC:\Users\Paul\AppData\Local\Programs\Python\Python35\include "-IC:\Program 
Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files 
(x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" "-IC:\Program Files 
(x86)\Windows Kits\10\include\10.0.14393.0\ucrt" "-IC:\Program Files 
(x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files 
(x86)\Windows Kits\10\include\10.0.14393.0\shared" "-IC:\Program Files 
(x86)\Windows Kits\10\include\10.0.14393.0\um" "-IC:\Program Files 
(x86)\Windows Kits\10\include\10.0.14393.0\winrt" "-IC:\Program Files 
(x86)\Windows Kits\10\Include\10.0.14393.0\ucrt\" /Tcprint_h_w.c 
/Fobuild\temp.win-amd64-3.5\Release\print_h_w.obj
cl : Command line error D8003 : missing source filename
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 
14.0\\VC\\BIN\\x86_amd64\\cl.exe' failed with exit status 2

我一直在做很多研究,但我发现了很多什么都没有。我该如何解决这个问题?

【问题讨论】:

  • 作为一种解决方法,我启动了一个 Windows 10 虚拟机,安装了 python 3.5.2、Cython(通过 pip)和 Visual C++ 2015 构建工具。在虚拟机上一切正常......

标签: python python-3.x cython cl cythonize


【解决方案1】:

我认为您应该在 print_h_w.pyx 文件中导入 cython

import cython
print("hello world")

【讨论】:

  • 不幸的是,这仍然不起作用,根据我在虚拟机上的测试是不必要的。
猜你喜欢
  • 2020-11-20
  • 2012-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多