【发布时间】:2021-06-14 00:42:19
【问题描述】:
我想分发一个具有闭源依赖的 Python 包。我正在使用 setup.py,如果我也使用 setup.py 进行编译,一切正常。
this question 的答案和that question 的答案都不能解决我的问题。
我的文件结构如下:
.
├── closed_source
│ ├── compiled.so
├── python_modules
│ ├── file1.py
│ ├── file2.py
│ ├── ...
│ └── __init__.py
└── setup.py
我还尝试将compiled.so 包含在python_modules 中。在file1.py 我使用import compiled 失败。
以下工作,但默默地未能包含动态库:
setup(
name='my_package',
version=0.1,
packages=['python_modules'],
package_dir={'python_modules': 'python_modules'},
package_data={'': ['closed_source/compiled.so']}, # also tried using key compiled
include_package_data=True,
)
【问题讨论】:
-
您是否尝试将
compiled.so放入python_modules文件夹中? -
是的,我试过了。
-
你的导入不正确,如果包含在包内,应该是
from python_modules import compiled -
@AnthonySottile 是的,这行得通。在将
compiled.so放入python_modules文件夹后,我使用了import python_modules.compiled as compiled。
标签: python setuptools setup.py