我遇到了同样的问题。以下是为我解决该问题的方法。
我已经更改了模块的名称,仅为简单的示例。
我的设置如下:
使用 Visual Studio 2017 构建扩展的项目,最终文件名为 myextension.pyd
然后,我使用 mypy 模块的 stubgen 在本地创建了这个模块的存根。
这是我的文件树
myextension/__init__.pyi
myextension/submodule.pyi
setup.py
myextension.pyd
这是 setup.py
的内容
from setuptools import setup, Distribution
class BinaryDistribution(Distribution):
def has_ext_modules(foo):
return True
setup(
name='myextension',
version='1.0.0',
description='myextension Wrapper',
packages=['', 'myextension'],
package_data={
'myextension': ['*.pyi'],
'': ['myextension.pyd'],
},
distclass=BinaryDistribution
)
在运行pip wheel .
之后,我得到了一个包含扩展和所需存根的非常好的wheel。