问题描述
我正在尝试使用诗歌包管理器安装 this 存储库。 以下是使用 pip 的方法:
git clone --recursive https://github.com/parlance/ctcdecode.git
cd ctcdecode && pip install .
但是如果我试着跑
poetry add ctcdecode
它因大量回溯而失败(我认为超过 200 行)。 所以我用
安装了它poetry run git clone --recursive https://github.com/parlance/ctcdecode.git
poetry run pip install ./ctcdecode
但是这种方式不适合与其他开发者共享。 我可以用 pyproject.toml 以某种方式做到这一点吗?
解决方法
poetry add <packagename>
将 pypi 上可用的依赖项(或如果配置了其他包存储库)添加并安装到您的项目。
如果要添加包,其中源代码位于 git 存储库中,请使用 poetry add git+<url_of_git>
。
ctcdecode
在这两种方式中的问题是,它需要构建。为此,需要 torch
。 ctcdecode
未根据 PEP 518 在 pyproject.toml
中声明此构建依赖项。
您可以通过克隆 git 存储库并将包含此内容的 pyproject.toml
放入项目文件夹来解决此问题:
[build-system]
requires = ["setuptools","torch"]
build-backend = "setuptools.build_meta"
然后返回到您当前的项目并添加本地路径依赖项,如下所示:
$ poetry add <relative_path_to_ctcdecode>