pip在virtualenv中使用指定的python时找不到tensorflow

2024-06-07 06:12:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我遇到了一个奇怪的问题,在安装了python2.7.9的ubuntu14.04上,当试图从使用自定义python构建pip的virtualenv内部安装tensorflow时,似乎找不到tensorflow。你知道吗

 virtualenv venv --python=/opt/python279/bin/python2.7
 cd venv
 source bin/activate
 pip install tensorflow

Collecting tensorflow Could not find a version that satisfies the requirement tensorflow (from versions: ) No matching distribution found for tensorflow

其他软件包安装正常:/我完全困惑


Tags: installpipsourcebinvirtualenvvenvtensorflownot
1条回答
网友
1楼 · 发布于 2024-06-07 06:12:56

前一段时间,我写了a more or less comprehensive checklist,寻找可能导致Could not find a version that satisfies requirement错误的不匹配。尽管这个问题是专门针对MacOS的,但答案同样适用于Linux。在您的例子中,您有一个ABI不匹配:正如在注释中发现的

/opt/python279/bin/python2.7 -c "import sysconfig;\
    abiflags=('m' if sysconfig.get_config_var('WITH_PYMALLOC') else '')+\
    ('u' if sysconfig.get_config_var('WITH_WIDE_UNICODE') else '')+\
    ('d' if sysconfig.get_config_var('WITH_PYDEBUG') else ''); print(abiflags)" 

返回m,表示编译此Python发行版时没有广泛的unicode支持(缺少u标志)。这意味着pip将只为这个Python发行版安装cp27-cp27m-manylinux1_x86_64控制盘。但是,在Linux上,Python2.7的唯一轮子是cp27-cp27mu-manylinux1_x86_64。要安装tensorflow,您需要构建一个具有广泛unicode支持的Python2.7发行版:

$ cd Python2.7-src
$ configure  enable-unicode=ucs4
$ make && make install

相关问题 更多 >