大佬教程收集整理的这篇文章主要介绍了如何使用 --no-binary 标志指示 pip 安装需求,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我要打包一个依赖于 protobuf
的应用程序。 protobuf 必须像这样安装:
pip install protobuf --no-binary=protobuf protobuf
如何将其包含在我的 setup.py
install_requires
中?
注意:我的要求要求此过程自动通过 setup.py。
我知道 this 和 this
因此,我尝试在 install_requires 或 requirements.txt 中包含这些内容,但没有成功:
@H_674_6@#requirements.txt
protobuf
--no-binary=protobuf
如何在打包应用程序时为安装 --no-binary=protobuf protobuf
提供 pip
(我知道是 protobuf
标志)?
更新: 我想要的是 protobuf 包以我在安装包时提到的方式安装:
@H_674_6@`pip install my_package.whl`
requirements.txt
文件安装
我想您可以简单地在同一行添加标志。这对我有用:
@H_674_6@# requirements.txt
protobuf --no-binary protobuf
pandas
使用这个 requirements.txt
,protobuf 安装时没有二进制文件,而 pandas 仍然安装了 .whl
。
通过运行 pip install -r requirements.txt
,您将获得如下结果:
$ pip install -r requirements.txt
CollecTing pandas
...
CollecTing protobuf
Using cached protobuf-3.17.3.tar.gz (228 kB)
Skipping wheel build for protobuf,due to binaries being disabled for it.
Installing collected packages: protobuf,pandas
Running setup.py install for protobuf ... done
successfully installed pandas-1.1.5 protobuf-3.17.3
如果您想在没有二进制文件的情况下包含对 protobuf
的依赖项,并且您使用 setup.py
文件打包您的库,您可以在 package@http://link/to/package.tar.gz
中包含 install_requires
setup
的参数。
from setuptools import setup,find_packages
setup(
name='your package`,version='0.1',packages=find_packages(),install_requires=[
'click','pyyaml','protobuf@https://github.com/protocolbuffers/protobuf/releases/download/v3.17.3/protobuf-python-3.17.3.tar.gz'
]
)
此解决方案的缺点是它还指定了依赖项的版本。
希望这有帮助!
以上是大佬教程为你收集整理的如何使用 --no-binary 标志指示 pip 安装需求全部内容,希望文章能够帮你解决如何使用 --no-binary 标志指示 pip 安装需求所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。