11

我正在尝试在 Linux 上安装 pytorch ( http://pytorch.org/ ),根据我的机器配置,我应该运行的命令是:

pip install https://s3.amazonaws.com/pytorch/whl/torch-0.1.6.post17-cp27-cp27mu-linux_x86_64.whl

在一台机器上(Linux 发行版 Slackware 14.1)安装失败并出现错误:torch-0.1.6.post17-cp27-cp27mu-linux_x86_64.whl is not a supported wheel on this platform.,而在另一台机器(Ubuntu 15.10)上安装成功。据我了解,问题似乎出cp27mu在车轮名称上。

使用import pip; print(pip.pep425tags.get_supported())Python shell 中的命令,我从 Slackware 机器上得到了这个:

[('cp27', 'cp27m', 'manylinux1_x86_64'), ('cp27', 'cp27m', 'linux_x86_64'), ('cp27', 'none', 'manylinux1_x86_64'), ('cp27', 'none', 'linux_x86_64'), ('py2', 'none', 'manylinux1_x86_64'), ('py2', 'none', 'linux_x86_64'), ('cp27', 'none', 'any'), ('cp2', 'none', 'any'), ('py27', 'none', 'any'), ('py2', 'none', 'any'), ('py26', 'none', 'any'), ('py25', 'none', 'any'), ('py24', 'none', 'any'), ('py23', 'none', 'any'), ('py22', 'none', 'any'), ('py21', 'none', 'any'), ('py20', 'none', 'any')]

这来自Ubuntu机器:

[('cp27', 'cp27mu', 'manylinux1_x86_64'), ('cp27', 'cp27mu', 'linux_x86_64'), ('cp27', 'none', 'manylinux1_x86_64'), ('cp27', 'none', 'linux_x86_64'), ('py2', 'none', 'manylinux1_x86_64'), ('py2', 'none', 'linux_x86_64'), ('cp27', 'none', 'any'), ('cp2', 'none', 'any'), ('py27', 'none', 'any'), ('py2', 'none', 'any'), ('py26', 'none', 'any'), ('py25', 'none', 'any'), ('py24', 'none', 'any'), ('py23', 'none', 'any'), ('py22', 'none', 'any'), ('py21', 'none', 'any'), ('py20', 'none', 'any')]

https://www.python.org/dev/peps/pep-0513/在我看来,支持cp27mcp27mu依赖于编译时传递的选项,--enable-unicode.

现在,也许在这一点上我什至不应该问这个问题,但可以肯定的是,这是否意味着我必须--enable-unicode=ucs4在 Slackware 机器上编译 Python 才能安装那个轮子?

4

1 回答 1

8

正是如此。使用 --enable-unicode=ucs4 在 slack 下重新编译 python,然后您可以安装 whl。

于 2017-05-06T20:00:38.377 回答