Python 在Anaconda2中导入tensorflow:未定义符号

Python 在Anaconda2中导入tensorflow:未定义符号,python,tensorflow,anaconda,ubuntu-16.04,jupyter,Python,Tensorflow,Anaconda,Ubuntu 16.04,Jupyter,今天早上,我试图在Anaconda3(python版本3.5和Ubuntu 16.04)上安装tensorflow。我使用conda安装tensorflow安装了tensorflow。但是,在导入python/jupyter笔记本时,它的工作效果并不好 Python 3.5.6 |Anaconda, Inc.| (default, Aug 26 2018, 21:41:56) [GCC 7.3.0] on linux Type "help", "copyright", "credits" or

今天早上,我试图在Anaconda3(python版本3.5和Ubuntu 16.04)上安装tensorflow。我使用
conda安装tensorflow
安装了tensorflow。但是,在导入python/jupyter笔记本时,它的工作效果并不好

Python 3.5.6 |Anaconda, Inc.| (default, Aug 26 2018, 21:41:56) 
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/work/.conda/envs/tensorflow/lib/python3.5/site-packages/tensorflow/__init__.py", line 22, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "/home/work/.conda/envs/tensorflow/lib/python3.5/site-packages/tensorflow/python/__init__.py", line 52, in <module>
    from tensorflow.core.framework.graph_pb2 import *
  File "/home/work/.conda/envs/tensorflow/lib/python3.5/site-packages/tensorflow/core/framework/graph_pb2.py", line 6, in <module>
    from google.protobuf import descriptor as _descriptor
  File "/home/work/.conda/envs/tensorflow/lib/python3.5/site-packages/google/protobuf/descriptor.py", line 47, in <module>
    from google.protobuf.pyext import _message
ImportError: /home/work/.conda/envs/tensorflow/lib/python3.5/site-packages/google/protobuf/pyext/_message.cpython-35m-x86_64-linux-gnu.so: undefined symbol: _ZNK6google8protobuf10TextFormat17FieldValuePrinter9PrintBoolEb
>>> 
Python 3.5.6 | Anaconda,Inc.|(默认,2018年8月26日,21:41:56)
linux上的[GCC 7.3.0]
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>输入张量流
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/home/work/.conda/envs/tensorflow/lib/python3.5/site packages/tensorflow/_init__.py”,第22行,在
从tensorflow.python导入pywrapu tensorflow 35; pylint:disable=未使用的导入
文件“/home/work/.conda/envs/tensorflow/lib/python3.5/site packages/tensorflow/python/_init__.py”,第52行,在
从tensorflow.core.framework.graph_pb2导入*
文件“/home/work/.conda/envs/tensorflow/lib/python3.5/site packages/tensorflow/core/framework/graph_pb2.py”,第6行
从google.protobuf导入描述符作为_描述符
文件“/home/work/.conda/envs/tensorflow/lib/python3.5/site packages/google/protobuf/descriptor.py”,第47行,在
从google.protobuf.pyext导入消息
ImportError:/home/work/.conda/envs/tensorflow/lib/python3.5/site-packages/google/protobuf/pyext//u message.cpython-35m-x86\u 64-linux-gnu.so:未定义符号:_znk6谷歌8protobuf10textformat17fieldvalueprinter9printbooleb
>>> 
以前有人遇到过这种情况吗?我注意到也有类似的情况,但解决方案可能不适用于Anaconda3。

使用pip安装tensoflow pypi软件包 我也犯了同样的错误。我的应用程序需要tensorflow 1.0.0版。tensorflow的conda包和pypi包之间似乎存在差异。因此,请在
ironment中卸载tensorflow的conda软件包,并再次安装pip软件包:

#卸载当前的tensorflow conda软件包
$sudo conda卸载--名称tensorflow
#安装tensorflow的pypi包
$sudo/bin/pip安装tensorflow==
在您的情况下,
=tensorflow
,到您的conda环境位置的路径是
=/home/work/.conda/envs/tensorflow

确保使用conda环境的
pip安装(
/bin/pip
),而不是一般的pip(
/bin/pip
)。如果尚未在环境中安装pip,请执行以下操作:

$sudo conda安装--名称pip