[英]pip requirement based on available OS library version
我正在开发基于pygit2
的python包。 pygit2取决于libgit2
。
Ubuntu 18.04的版本为libgit2-2.6
Ubuntu 18.10的版本为libgit2-2.7
在我的requirements.txt / Pipfile中,如果我有"pygit2" = "==0.26.4"
,它可以在18.04(在执行apt-get install libgit2-dev
)工作,而在18.10中则不能。 同样,取决于"*"
或"==0.27"
在18.10上有效,但在18.04上无效。 我还没有尝试过其他发行版。 有没有一种我可以指定的方式,
if os has libgit2-2.6
pygit2 == 0.26.4
else if os has libgit2-2.7
pygit2 == 0.27.x
我尝试pygit2>=0.26.4
,对于18.04不起作用。
您可以使用platform
模块指定特定于版本的模块。
>>> platform.platform().split('-')[6]
'18.04'
>>>
>>> import platform
>>> if "18.04" in platform.platform():
... print("install 18.04 modules")
... elif "18.10" in platform.platform():
... print("Install 18.10 modules")
...
install 18.04 modules
>>>
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.