gpt4 book ai didi

python - Cython setup.py 找不到已安装的 Visual C++ 构建工具

转载 作者:行者123 更新时间:2023-12-01 23:28:13 28 4
gpt4 key购买 nike

我正在尝试使用此 setup.py 文件构建我的 cython 代码:

from distutils.core import setup
from Cython.Build import cythonize
import numpy as np

setup(
name="My Cython Project",
ext_modules=cythonize("*.pyx", include_path=[np.get_include()], language="c++")
)

python setup.py build_ext --inplace

但是我得到了错误:

error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/

但我安装了构建工具并且我知道它们有效因为我可以在 VS 2019 的开发人员命令提示符中使用这些命令手动构建我的项目:

cython -a -3 --cplus Myfile.pyx
cl /LD /O2 /EHsc [ include files ] Myfile.cpp [ python 3.8 lib ]

为什么cython认为没有安装构建工具?我需要向 PATH 添加一些东西吗?

(我在安装了 gcc 的 macOS 机器上运行同一个项目,它运行良好。)

Screenshot of my Visual Studio Installer Screen

最佳答案

问题是 setup.py 显示的 MSVC 版本不正确。这不是您需要的 14.0。我自己也解决了同样的问题,同样适用于 Python 3.8,所以这里是步骤。

  1. 当你为 Python 编译某些东西时,你应该使用相同的编译器版本。那么让我们看看您使用的 Python 编译器是什么:

    python -c "import sys; print(sys.version)"

    我的指纹:

    3.8.1(tags/v3.8.1:1b293b6,2019 年 12 月 18 日,23:11:46)[MSC v.1916 64 位 (AMD64)]

    所以我需要 MSVC 版本 1916。

  2. 您可以在此处查看它是哪个版本:https://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B .对我来说,1916 是 Visual Studio 2017 版本 15.9 - 可能这就是您真正需要的。

  3. 您下载了 M$ https://my.visualstudio.com/Downloads?q=Visual%20Studio%202015&pgroup= ,例如,搜索“Visual Studio Community 2017(版本 15.9)”并安装它(或仅安装编译器)并享受。

附言很可能您的所有 python 3.8 扩展都需要该编译器(除非您使用直接 dll 调用),并且您将需要重新编译您在 Studio 2019 中执行的代码。

关于python - Cython setup.py 找不到已安装的 Visual C++ 构建工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66838238/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com