我试图构建一个Python扩展并使用distutils将其打包,但是不管我如何命名,该扩展都安装在根包中。我的目录布局如下所示:
foo/bar/extension.c
我的setup.py
如下所示:
我设置了一个virtualenv
并运行
python setup.py install
然后在我的Python shell中:
>>> import foo.bar.extension
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named invest_cython_core
>>> import extension #This works!
我可以做些什么更改,以使第一个import语句正常工作,第二个导入语句失败?在
我认为您需要使用},这样distutils首先安装这些包,然后安装扩展模块。(在这里,一个错误比无声的错误行为要好,我将打开一个错误报告,以便distutils2表现得更好。)
foo/__init__.py
和{您使用的是自定义生成扩展类吗?(在您的示例中,因为
cmdclass={'build_ext': build_ext}
而询问)可能在问题中起到了一定的作用。在相关问题 更多 >
编程相关推荐