【问题标题】:Is it possible to set top_level for bdist_wheel?是否可以为 bdist_wheel 设置 top_level?
【发布时间】:2020-06-02 09:59:11
【问题描述】:

我有一个类似这样结构的项目:

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 中一样)吗?

【问题讨论】:

    标签: python-3.x setup.py python-wheel


    【解决方案1】:

    也许像下面这样的东西可以工作,但我不确定(还没有测试过),它可能还需要以某种方式排除setup.py,无论如何我都不推荐它:

    import setuptools
    
    setuptools.setup(
        packages=['some_name', 'some_name.module_1'],
        package_dir={'some_name': '../project_name'},
        # ...
    )
    

    参考文献

    【讨论】:

    • 测试了上面的,它工作。以为我需要覆盖build,但setup.py 不包含在bdist_wheel 中。
    猜你喜欢
    • 1970-01-01
    • 2015-10-22
    • 2012-01-22
    • 2013-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多