pip 的操作系统特定要求

2022-01-11 00:00:00 python operating-system pip

问题描述

是否可以在 pip 的 requirements.txt 文件中包含操作系统特定的要求?

Is it possible to have OS specific requirements in pip's requirements.txt file?

例如:我依赖于 readline,因此,如果安装在 Windows(或 OSX)上,则需要 pyreadline.如果是 linux,那么我不想强制安装.

For example: I have a dependency on readline, therefore, if installing on windows (or OSX), then pyreadline is a requirement. If it's linux, then I don't want to force an install.


解决方案

您可以使用 PEP-508:

这是在 requirements.txt 中使用此类标记的示例:

Here's an example of using such a marker inside a requirements.txt:

pyreadline==2.1; platform_system == "Windows"

同样,在 setup.py 中:

setup(
    ...
    install_requires=['pyreadline; platform_system == "Windows"'],
)

相关文章