gpt4 book ai didi

python - 使用 `python setup.py develop` 安装更多文件

转载 作者:太空宇宙 更新时间:2023-11-03 21:21:34 27 4
gpt4 key购买 nike

我正在研究 Python 2 的 Swift 扩展。由于 distutils/setuptools 仅支持 C/C++ 扩展,因此我需要修改构建命令以使其构建 Swift 代码。

我运行的python setup.py buildpython setup.py install显示成功:包及其内容位于正确的位置,并且 native 扩展正确加载在导入上。

但是,我的团队更喜欢使用 pip install -e .,它最终会执行 python setup.pydevelop 来稍微加快开发速度;就目前情况而言,setup.py 不知道将 build 编译的 native 库复制到源目录。

在我当前的设置中:

  • SwiftBuildExt 类(它扩展了 Cython 的类,因为我们,呃,支持语言多样性)...
  • ...覆盖 run 以构建使用 glob 动态找到的 Swift 模块。
  • run 将条目添加到一个列表中,我将其称为 swift_modules
  • get_output 在执行 run 后被覆盖以返回基础文件和 swift_modules

我需要更改什么才能让 develop 正常工作?

最佳答案

我发现它正在阅读 setuptools.command.develop 的源代码: develop 使用 inplace 参数运行 build_ext 命令,该参数告诉 build_ext 将构建输出保存到源树。可以预见的是,可以使用 build_ext 子类中的 self.inplace 来测试此参数。从那里开始,只需更改文件的复制位置即可。

它在 Python 3 中以不同的方式处理,我还没有探索过。

关于python - 使用 `python setup.py develop` 安装更多文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54191874/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com