Pycharm tensorflow ImportError但可以正常使用Terminal

时间:2017-04-29 04:13:47

标签: linux tensorflow pycharm python-import

我安装了tensorflow的virtualenv,我将Python解释器设置更改为virtualenv所在的位置。当我运行程序时,它会给出错误:

ImportError: libcudnn.so.5: cannot open shared object file: No such file or directory

我在.bashrc文件中写了以下几行

export CUDA_HOME=/usr/local/cuda-8.0
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:$LD_LIBRARY_PATH
export PATH=${CUDA_HOME}/bin:${PATH}

另外,我在以下路径中找到了libcudnn.so.5文件:

/usr/local/cuda-8.0/lib64 

我在打开PyCharm之前遇到了这个错误,我确实设法安装了正确的cudnn版本。问题是,我可以使用

$ source [virtualenv_path]

激活virtualenv并在终端中运行python,一切正常,没有显示错误。程序也在Pycharm的终端中运行没有错误,但只要我点击运行按钮就会给我上面的错误。环境变量还有问题吗?我该如何解决?

3 个答案:

答案 0 :(得分:6)

不幸的是,在pycharm中,您必须在IDE中设置CUDA_HOMELD_LIBRARY_PATH。要执行此操作,请转到“运行”菜单 - >编辑配置,然后选择您的项目。然后单击环境变量并添加CUDA_HOMELD_LIBRARY_PATH的条目。完成后,您可以直接从pycharm内部运行。我还建议设置默认值以包含这些路径,因此您不必为每个项目执行此操作。在此设置页面上确保您拥有source [virtualenv_path]设置的解释器也没有什么坏处。如果您无法找到执行此操作的位置,请与我们联系。

答案 1 :(得分:4)

我已阅读其他Stackoverflow帖子:Pycharm environment different than command line,似乎问题是以正常方式打开PyCharm不会保留bash环境。解决方案是从命令行打开PyCharm,现在一切正常。您需要做的就是使用charm打开PyCharm,现在一切正常。

答案 2 :(得分:1)

我进行了很多搜索,但是在任何地方都找不到适合该问题的正确解决方案。我与朋友们找到了解决方案,我也想与您分享。

如果您的Tensorflow在终端中正常工作,但在Pycharm中不工作,则有两种解决方案:

1-从终端打开Pycharm。对我来说:

pycharm-community

2-如果您使用的是Unity,请编辑.profile:打开终端

gedit .profile

然后,在文件末尾添加以下代码。

export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

保存并退出。