在 Windows 上使用 Cython 3.4 32 位编译 Hello World 时出现 AttributeError
AttributeError compiling Hello World in Cython 3.4 32-bit on Windows
我正在尝试使 Cython Hello World 教程正常运行,但在编译时出现属性错误。
我的 Hello world 程序,在 Python 3.4:
print("Hello World from Cython")
和设置文件,setupCythonHelloWorld.py:
from distutils.core import setup
from Cython.Build import cythonize
setup(
ext_modules = cythonize('helloWorld.pyx')
)
在命令行:
py -m setupCythonHelloWorld.py build_ext --inplace running build_ext
命令行 returns 和错误:
Error while finding spec for 'setupCythonHelloWorld.py' (<class 'AttributeError'>: 'module' object has no attribute '__path__')
以下是关于我的电脑和安装的一些详细信息:
- Windows7、64 位。 (我在使用 bootcamp 的 Macbook pro 上,但这不重要)
- Python 3.4,32 位版本
- 模块的常规 pip 安装,主要来自 wheels。没有 Anaconda 或 Python (x,y).
我已经卸载并重新安装了所有 windows 编译器好几次了,这并不好玩。我知道我需要 MS C++ 2010,因为我有 Python 3.4,我需要编译器来匹配。有很多关于 MinGW 的信息,但也有关于不要使用该编译器的指导,因为它与 Python 为 Windows.
构建的内容不匹配
最近的重新安装列在“Microsoft Visual C++ 10.0 standalone: Windows SDK 7.1 (x86, x64, ia64)". I've also tried a few other ways, including the python 3.4 section of "Compiling Python extensions on Windows”下。
如有任何帮助,我们将不胜感激。我已经完成了各种 Windows VS 和 SDK 版本的大量安装和卸载工作,与 7 小时前相比,我并没有那么接近。谢谢。
这与许多其他主题相关:
- SO "ValueError:['path'] post,但它可能是 64 位的(抱歉没有 link,我没有足够的点数 post 超过2 links)
- 许多其他 cython 安装 posts,但似乎都与其他系统有关,包括 64 位,linux,非 Python 3.4 版本,.. .
好的,我下注了。我升级到 Python 3.5,这让事情变得非常简单。
就像 Compiling Python extensions on Windows 的 Python 3.5 部分中解释的一样简单:
- 安装 Visual C++ 2015 构建工具
- Cython Hello World 编译和 运行s。简单。
我今天花了 9 个多小时在 Python 3.4 上与 Cython 的 MS 2010 编译器苦苦挣扎......但从未让它工作。我在不到一个小时的时间内使用 Python 3.5 获得了 C++ 2015 构建工具和 Cython 到 运行 Hello World。
如果有人知道如何让它工作,我很想知道。但是,除非我的依赖项出现严重错误,否则我认为我不会再回顾 Python 3.4。
我正在尝试使 Cython Hello World 教程正常运行,但在编译时出现属性错误。
我的 Hello world 程序,在 Python 3.4:
print("Hello World from Cython")
和设置文件,setupCythonHelloWorld.py:
from distutils.core import setup
from Cython.Build import cythonize
setup(
ext_modules = cythonize('helloWorld.pyx')
)
在命令行:
py -m setupCythonHelloWorld.py build_ext --inplace running build_ext
命令行 returns 和错误:
Error while finding spec for 'setupCythonHelloWorld.py' (<class 'AttributeError'>: 'module' object has no attribute '__path__')
以下是关于我的电脑和安装的一些详细信息:
- Windows7、64 位。 (我在使用 bootcamp 的 Macbook pro 上,但这不重要)
- Python 3.4,32 位版本
- 模块的常规 pip 安装,主要来自 wheels。没有 Anaconda 或 Python (x,y).
我已经卸载并重新安装了所有 windows 编译器好几次了,这并不好玩。我知道我需要 MS C++ 2010,因为我有 Python 3.4,我需要编译器来匹配。有很多关于 MinGW 的信息,但也有关于不要使用该编译器的指导,因为它与 Python 为 Windows.
构建的内容不匹配最近的重新安装列在“Microsoft Visual C++ 10.0 standalone: Windows SDK 7.1 (x86, x64, ia64)". I've also tried a few other ways, including the python 3.4 section of "Compiling Python extensions on Windows”下。
如有任何帮助,我们将不胜感激。我已经完成了各种 Windows VS 和 SDK 版本的大量安装和卸载工作,与 7 小时前相比,我并没有那么接近。谢谢。
这与许多其他主题相关:
- SO "ValueError:['path'] post,但它可能是 64 位的(抱歉没有 link,我没有足够的点数 post 超过2 links)
- 许多其他 cython 安装 posts,但似乎都与其他系统有关,包括 64 位,linux,非 Python 3.4 版本,.. .
好的,我下注了。我升级到 Python 3.5,这让事情变得非常简单。
就像 Compiling Python extensions on Windows 的 Python 3.5 部分中解释的一样简单:
- 安装 Visual C++ 2015 构建工具
- Cython Hello World 编译和 运行s。简单。
我今天花了 9 个多小时在 Python 3.4 上与 Cython 的 MS 2010 编译器苦苦挣扎......但从未让它工作。我在不到一个小时的时间内使用 Python 3.5 获得了 C++ 2015 构建工具和 Cython 到 运行 Hello World。
如果有人知道如何让它工作,我很想知道。但是,除非我的依赖项出现严重错误,否则我认为我不会再回顾 Python 3.4。