我正在尝试使用pip安装TensorFlow:
$ pip install tensorflow --user
Collecting tensorflow
Could not find a version that satisfies the requirement tensorflow (from versions: )
No matching distribution found for tensorflow
我做错了什么?到目前为止,我使用Python和pip没有任何问题。
我正在尝试使用pip安装TensorFlow:
$ pip install tensorflow --user
Collecting tensorflow
Could not find a version that satisfies the requirement tensorflow (from versions: )
No matching distribution found for tensorflow
我做错了什么?到目前为止,我使用Python和pip没有任何问题。
当前回答
注意:这个答案是针对Cygwin用户的
留下这个答案是因为这里的其他方法都不适合我的用例(使用*nix-on-Windows终端环境在virtualenv上安装tensorflow, cygwin (http://www.cygwin.com/))(至少在答案页面上一个简单的控件+F没有找到任何东西)。
TLDR:如果您在cygwin终端上使用virtualenv,请了解cygwin似乎在安装tensorflow时遇到了问题,并抛出了本文问题中指定的错误(可以在这里(https://stackoverflow.com/a/45230106/8236733)找到类似的情绪(类似的原因,不同的错误))。通过在Windows命令提示符中创建virtualenv来解决。然后可以通过source ./Scripts/activate从cygwin终端访问/激活virtualenv,使用Windows的(不是cygwin的)python。
当只是使用cygwin的python3尝试使用tensorflow,例如。之类的……
apt-cyg install python3-devel
cd python-virtualenv-base
virtualenv -p `which python3` tensorflow-examples
发现使用cygwin的python安装tensorflow-gpu包时存在一些问题。看到了错误
$ PIP install tensorflow 收集tensorflow 无法找到满足tensorflow要求的版本 没有找到匹配的分布张量流
有许多建议的解决方案,没有一个对我的情况有帮助(它们通常都是沿着“您可能已经安装了用于32位架构的python3, tensorflow需要64位”或其他一些python不匹配的错误(而在这里,似乎只是cygwin的python安装tensorflow-gpu有问题))。
最后对我有用的是……
通过Windows系统的官方Windows方式安装python3 (cygwin系统是独立的,因此使用不同的python) 在Windows(不是cygwin终端)中打开命令提示符,然后执行…
C:\Users\me\python-virtualenvs-base>python
Python 3.6.2 (v3.6.2:5fd33b5, Jul 8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
C:\Users\me\python-virtualenvs-base>pip -V
pip 9.0.1 from c:\users\me\appdata\local\programs\python\python36\lib\site-packages (python 3.6)
C:\Users\me\python-virtualenvs-base>pip install virtualenv
Collecting virtualenv
Downloading https://files.pythonhosted.org/packages/b6/30/96a02b2287098b23b875bc8c2f58071c35d2efe84f747b64d523721dc2b5/virtualenv-16.0.0-py2.py3-none-any.whl (1.9MB)
100% |████████████████████████████████| 1.9MB 435kB/s
Installing collected packages: virtualenv
Successfully installed virtualenv-16.0.0
You are using pip version 9.0.1, however version 18.0 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
C:\Users\me\python-virtualenvs-base>virtualenv tensorflow-examples
Using base prefix 'c:\\users\\me\\appdata\\local\\programs\\python\\python36'
New python executable in C:\Users\me\python-virtualenvs-base\tensorflow-examples\Scripts\python.exe
Installing setuptools, pip, wheel...done.
然后,可以返回cygwin终端,导航回您在命令提示符中创建的virtualenv,并执行…
➜ tensorflow-examples source ./Scripts/activate
(tensorflow-examples) ➜ tensorflow-examples python -V
Python 3.6.2
(tensorflow-examples) ➜ tensorflow-examples pip install tensorflow-gpu
Collecting tensorflow-gpu
Downloading
....
注意,如果您在cygwin的伪linux环境中创建了virtualenv,那么您不会在virtualenv中执行source ./bin/activate,而是执行source ./Scripts/activate。
其他回答
我在OSX Sierra 10.12.2上遇到了这个问题。原来我安装的Python版本是错误的(我安装的是Python 3.4,但OSX的tensorflow pypi包只适用于Python 3.5及以上版本)。
解决方案是安装Python 3.6。下面是我让它工作的方法。注意:我使用Homebrew来安装Python 3.6,你也可以使用python.org上的Python 3.6安装程序来安装
brew uninstall python3
brew install python3
python3 --version # Verify that you see "Python 3.6.0"
pip install tensorflow # With python 3.6 the install succeeds
pip install jupyter # "ipython notebook" didn't work for me until I installed jupyter
ipython notebook # Finally works!
目前PIP没有32位版本的tensorflow,当我卸载python 32位并安装x64时,它可以工作
登录https://pypi.python.org/pypi/tensorflow查看哪些软件包可用。
在撰写本文时,他们还没有提供源包,因此如果没有为您的平台预先构建的源包,则会出现此错误。如果向pip命令行添加-v,您将看到它遍历PyPI上可用的包,并因不兼容而丢弃它们。
你需要在其他地方找到一个预先构建的包,或者根据https://www.tensorflow.org/install/install_sources上的说明从它的源代码编译tensorflow。
他们有充分的理由不为某些平台开发:
缺少一个win32包,因为TensorFlow的依赖项Bazel只支持win64。 对于win64,只支持3.5+,因为早期版本是用不支持c++ 11的编译器编译的。
如果你试图在windows机器上安装它,你需要有64位版本的python 3.5。这是真正安装它的唯一方法。来自网站:
TensorFlow仅支持Windows上的64位Python 3.5。我们已经用以下Python发行版测试了pip包: Anaconda的Python 3.5 Python 3.5来自python.org。
你可以从这里下载合适的python版本(确保你选择了一个写着“Windows x86-64”的版本)
现在,您应该能够使用pip install tensorflow或python -m pip install tensorflow进行安装(如果同时安装了python2和python3,请确保您使用的是从python3安装的正确pip)
请记住安装Anaconda 3-5.2.0作为最新版本,即3-5.3.0,包含Tensorflow不支持的python 3.7版本。
您需要使用正确版本的Python和pip。
在Windows 10上,使用Python 3.6。X版本我也面临同样的问题,然后在仔细检查后,我注意到我的64位机器上安装了Python-32位。记住TensorFlow只兼容64位的Python安装,不兼容32位的Python版本
如果我们从python.org下载Python,默认安装为32位。所以我们必须手动下载64位安装程序来安装Python 64位。然后将以下内容添加到PATH环境中。
C:\Users\AppData\Local\Programs\Python\Python36
C:\Users\AppData\Local\Programs\Python\Python36\Scripts
然后在命令提示符下执行gpupdate /Force。如果Python命令不能用于64位,则重新启动计算机。
然后在命令提示符下运行python。它应该显示64位。
C:\Users\YOURNAME>python
Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
然后执行以下命令安装tensorflow CPU版本(推荐)
pip3 install --upgrade tensorflow
2020年10月更新:
Tensorflow现在支持Python 3.5。通过Python 3.8。X,但您仍然必须使用64位版本。
如果需要在同一台机器上运行多个版本的Python,可以使用虚拟环境来帮助管理它们。