gpt4 book ai didi

python - Pip 可以在安装时安装 setup.py 中未指定的依赖项吗?

转载 作者:IT老高 更新时间:2023-10-28 20:37:17 26 4
gpt4 key购买 nike

当用户发出安装原始软件的命令时,我希望 pip 安装我在 GitHub 上的依赖项,同样来自 GitHub 上的源代码。这些包都没有在 PyPi 上(永远不会)。

用户发出命令:

pip -e git+https://github.com/Lewisham/cvsanaly@develop#egg=cvsanaly

这个 repo 有一个 requirements.txt 文件,另一个依赖于 GitHub:

-e git+https://github.com/Lewisham/repositoryhandler#egg=repositoryhandler

我想要的是一个单个命令,用户可以发出它来安装原始包,让 pip 找到需求文件,然后也安装依赖项。

最佳答案

This answer帮我解决了你说的同样的问题。

setup.py 似乎没有一种简单的方法可以直接使用需求文件来定义其依赖项,但是可以将相同的信息放入 setup.py 本身。

我有这个 requirements.txt:

PIL
-e git://github.com/gabrielgrant/django-ckeditor.git#egg=django-ckeditor

但是在安装 requirements.txt 包含的包时,pip 会忽略这些要求。

这个 setup.py 似乎强制 pip 安装依赖项(包括我的 github 版本的 django-ckeditor):

from setuptools import setup

setup(
name='django-articles',
...,
install_requires=[
'PIL',
'django-ckeditor>=0.9.3',
],
dependency_links = [
'http://github.com/gabrielgrant/django-ckeditor/tarball/master#egg=django-ckeditor-0.9.3',
]
)

编辑:

This answer还包含一些有用的信息。

需要将版本指定为“#egg=...”的一部分,以标识链接中可用的软件包版本。 但是请注意,如果您总是想依赖最新版本,您可以在 install_requires、dependency_links 和其他包的 setup.py 中将版本设置为 dev

编辑: 使用 dev 作为版本不是一个好主意,根据下面的评论。

关于python - Pip 可以在安装时安装 setup.py 中未指定的依赖项吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4150423/

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