是否可以为 bdist_wheel 设置 top_level?
Is it possible to set top_level for bdist_wheel?
我有一个结构与此类似的项目:
project_name
|_ module_1
|_ submodule1
|_ file1.py
|_ module_2
|_ filea.py
|_ fileb.py
|_ setup.py
如果我从中创建一个 bdist_wheel
,安装时我将直接在 site-packages
.
下获得文件和模块文件夹
我可以向树中添加另一层,如下所示:
project_name
some_name
|_ module_1
|_ submodule1
|_ file1.py
|_ module_2
|_ filea.py
|_ fileb.py
|_ setup.py
然后我在 site-packages
中的 some_name
下安装了所有东西。
问题是,我可以通过某种方式设置 top_level
或通过其他不需要向层次结构添加另一个文件夹的方式来实现相同的目的吗(代码与 GIT 中的前者一样)?
也许像下面这样的东西可以工作,但我不确定(还没有测试过),它可能还需要以某种方式排除 setup.py
,无论如何我不会推荐它:
import setuptools
setuptools.setup(
packages=['some_name', 'some_name.module_1'],
package_dir={'some_name': '../project_name'},
# ...
)
参考文献:
我有一个结构与此类似的项目:
project_name
|_ module_1
|_ submodule1
|_ file1.py
|_ module_2
|_ filea.py
|_ fileb.py
|_ setup.py
如果我从中创建一个 bdist_wheel
,安装时我将直接在 site-packages
.
我可以向树中添加另一层,如下所示:
project_name
some_name
|_ module_1
|_ submodule1
|_ file1.py
|_ module_2
|_ filea.py
|_ fileb.py
|_ setup.py
然后我在 site-packages
中的 some_name
下安装了所有东西。
问题是,我可以通过某种方式设置 top_level
或通过其他不需要向层次结构添加另一个文件夹的方式来实现相同的目的吗(代码与 GIT 中的前者一样)?
也许像下面这样的东西可以工作,但我不确定(还没有测试过),它可能还需要以某种方式排除 setup.py
,无论如何我不会推荐它:
import setuptools
setuptools.setup(
packages=['some_name', 'some_name.module_1'],
package_dir={'some_name': '../project_name'},
# ...
)
参考文献: