Python 的 setup.py:如何为不同平台安装不同的文件

Uri*_*hen 5 python distutils cross-platform setuptools setup.py

我正在编写一个跨平台的包,它需要为不同的平台(例如 Linux/MAC OS/Windows 甚至 32 位/64 位 Windows)包含不同的二进制文件

我需要我的包的 setup.py 来安装基于平台的不同二进制数据文件。问题是我需要将所有平台的数据文件都包含在包中,它们可能具有相同的名称但内容不同。

有人可以建议如何使用 distutils / setuptools setup.py 吗?

Eri*_*got 2

这并不太难,至少在简单的情况下:例如,您可以查看不确定性 Python 包的setup.py如何执行此操作(它根据 Python 版本选择安装目录,但您只需检查 sys .平台和朋友,就您而言)。

\n\n

关键行是

\n\n
if sys.version_info >= (2, 5):\n    package_dir = \'uncertainties-py25\'\nelse:\n    package_dir = \'uncertainties-py23\'\n
Run Code Online (Sandbox Code Playgroud)\n\n

\n\n
distutils.core.setup(\n    \xe2\x80\xa6\n    # Where to find the source code:\n    package_dir={\'uncertainties\': package_dir},\n    \xe2\x80\xa6\n)\n
Run Code Online (Sandbox Code Playgroud)\n