【问题标题】:pytorch for gpu installation error on ubuntu 14.04(cuda 8.0, python2.7.6, pip 19.0.1) - wheel not supportedubuntu 14.04(cuda 8.0,python2.7.6,pip 19.0.1)上用于 gpu 安装错误的 pytorch - 不支持轮子
【发布时间】:2019-06-18 21:01:37
【问题描述】:

我按照pytorch网站上的教程命令,但是出现了这样的错误。

错误:torch-1.0.0-cp27m-linux_x86_64.whl 不是有效的车轮文件名。

我使用以下命令进行安装。

pip install https://download.pytorch.org/whl/cu80/torch-1.0.0-cp27-cp27m-linux_x86_64.whl

【问题讨论】:

  • 显示以下命令的结果:python --versionpip --versionuname -alsb_release -a。该错误可能是由于版本不兼容。
  • Python 2.7.6 pip 19.0.1 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7) Linux heejae 4.4.0-31-generic #50~14.04 .1-Ubuntu SMP Wed Jul 13 01:07:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux heejae@heejae:~$ lsb_release -a 没有可用的 LSB 模块。发行商 ID:Ubuntu 描述:Ubuntu 14.04.5 LTS 版本:14.04 代号:trusty
  • 由于我安装了tensorflow,cudnn for python2.7,我无法更改python的版本...
  • 有时会出现这种错误...Could not install packages due to an EnvironmentError: HTTPSConnectionPool(host='download.pytorch.org', port=443): Max retries exceeded with url: /whl/cu80/torch-1.0.0-cp27-cp27mu-linux_x86_64.whl(由 SSLError 引起(SSLError(1, '_ssl.c:510: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure'), ))

标签: python pip pytorch


【解决方案1】:

wheel 是一个带有 .whl 扩展名的 ZIP 存档,它应该有一个特殊格式的文件名,并包含一个可在您的平台上识别的可重定位 Python 包。

请使用您的网络浏览器如火狐获取manylinux1 轮子directly from PyPI website:

torch-1.0.1.post2-cp27-cp27m-manylinux1_x86_64.whl (582.6 MB)
torch-1.0.1.post2-cp27-cp27mu-manylinux1_x86_64.whl (582.5 MB)

请确保选择适合您的特定操作系统/平台的一种。在您的情况下,mu-manylinux1 是最有可能的选择。您可以使用这个 shell 命令来确保:

$ python -c "import sys; print 'UCS4/UTF-32: mu-manylinux1' if sys.maxunicode > 65535 else 'UCS2/UTF-16: m-manylinux1'"
Python 3 版本:
$ python3 -c "import sys; print('UCS4/UTF-32: mu-manylinux1' if sys.maxunicode > 65535 else 'UCS2/UTF-16: m-manylinux1')"

mu 更常见,意味着您的 Python 以 UCS-4 (UTF-32) 格式存储 Unicode 数据。
cp27 代表 Python 2.7;同样 cp36 适用于 Python 3.6
x86_64 适用于 64 位平台。 Pytorch 不支持 32 位..

所有 manylinux1 轮子都要求 pip v8.1 或更高版本为pip install'ed(你有 v19.0.1 - 好的)。

关于你在评论中提到的SSLError...sslv3 alert handshake failure,这是因为pip 大约一年前就没有使用旧的 SSL/TLS 协议连接到 PyPI,而是你系统的底层 OpenSSL 库已过时,并且 Python 2.7.6 ssl 模块无论如何都不支持所需的 TLS 1.2 协议。我将在您的another posting 中解决这个问题。

【讨论】:

    猜你喜欢
    • 2017-06-01
    • 2016-09-11
    • 2020-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-04
    • 2017-01-20
    相关资源
    最近更新 更多