Чтобы применить Cython к будущему проекту и ознакомиться с ним, я начал с создания простого 'helloworld', как описано в документации Cython, на машине windows. Следуя инструкциям, я продолжаю получать ту же ошибку:
D:\Test GB Python\HelloWorldpyx>python setup.py build_ext --inplace
running build_ext
building 'helloworld' extension
C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.24.28314\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -ID:\Python\include -ID:\Python\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.24.28314\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\cppwinrt" "-IC:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.24.28314\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\cppwinrt" /Tchelloworld.c /Fobuild\temp.win-amd64-3.8\Release\helloworld.obj
helloworld.c
c1: fatal error C1083: Cannot open source file: 'helloworld.c': No such file or directory
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC\\Tools\\MSVC\\14.24.28314\\bin\\HostX86\\x64\\cl.exe' failed with exit status 2**
Пытаясь самостоятельно выяснить проблему, я прочитал, но безрезультатно, следующее:
До сих пор я пытался:
- Включая в переменную окружения путь, как Python, так и компилятор VS x64.
- Загрузка и установка соответствующего компилятора VS для моей версии Python.
- Обновление setuptools.
- Выполнение команды 'cythonize -3 -i helloworld.pyx' как из командной строки для разработчиков для VS 2019 , так и из командной строки x64 Native Tools для VS 2019 в качестве администратора.
- Успешная компиляция. c и. cpp файлов 'Helloworld', написанных в c и c ++ соответственно, в другом каталоге.
- Изменение файла setup.py , как написано в документации Cython, для включения в него «# distutils: language = 3», чтобы указать, что Python 3 используется. Теперь «setup.py» выглядит следующим образом:
# distutils: language=3
from distutils.core import setup
from Cython.Build import cythonize
setup(
ext_modules = cythonize("helloworld.pyx")
)
Системные спецификации:
- Microsoft Windows [Версия 10.0.18362.720]
- MSV C 14.24.28314
- Python 3.8.2 AMD64
- Cython 0.29.15
Любая помощь будет высоко ценится, Я надеюсь, что это не будет повторяющийся вопрос, и поскольку это мой первый вопрос, любое необходимое редактирование будет выполнено, как указано.