pip 的 requirements.txt 文件中是否可以有操作系统特定的要求?
例如:我依赖于readline,因此,如果安装在 Windows(或 OSX)上,那么pyreadline是必需的。如果是 linux,那么我不想强制安装。
pip 的 requirements.txt 文件中是否可以有操作系统特定的要求?
例如:我依赖于readline,因此,如果安装在 Windows(或 OSX)上,那么pyreadline是必需的。如果是 linux,那么我不想强制安装。
您可以使用PEP-508中指定的“环境标记”来执行此操作:
这是在 a 中使用此类标记的示例requirements.txt
:
pyreadline==2.1; platform_system == "Windows"
同样,在 a 中setup.py
:
setup(
...
install_requires=['pyreadline; platform_system == "Windows"'],
)
最后,在 setup.py 中添加操作系统检查是我发现其他人使用的。前任:
install_requires = [
"parsedatetime >= 1.1.2",
"colorama >= 0.2.5",
"pycrypto >= 2.6"
] + ["pyreadline >= 2.0"] if "win" in sys.platform else [],