2017-08-15 44 views
-2

工作,我有一个进口tensorflow的脚本。 在脚本的开始手动设置sys.path中,并与工作目录:巨蟒进口从命令行工作,而不是从pycharm

import os; os.chdir('/home/my_project'); print(os.getcwd()) 
import sys; sys.path = [...]; print(sys.path) 

当我运行从PyCharm剧本,我越来越:

ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory 

当我运行它来自于linux命令行,它使用了相同的python interpeter。我知道我使用了准确的插入器和脚本,因为我从Pycharm控制台复制了命令。 sys.path和os.getcwd输出在从cmd和PyCharm运行时是相同的。

我使用CUDA 8.0,tensorflow-GPU。

+0

'LD_LIBRARY_PATH =/usr/local/cuda/lib64'将ld库路径添加到路径变量 –

+0

我从脚本打印下列值,我可以告诉他们,当我从Pycharm,从cmd运行它时是相同的: 'os.environ ['LD_LIBRARY_PATH']' 'os.getcwd()' 'sys.path' – Tal

+0

解决方法: 我似乎从某种原因从PyCharm环境变量LD_LIBRARY_PATH的设置不会真正影响它,并设置os.environ [“LD_LIBRARY_PATH”]如果它是从脚本本身设置没有为进口提供帮助。 什么解决的问题是,我直接跑到PyCharm从CMD,所以它有同样的LD_LIBRARY_PATH。 – Tal

回答

0

我似乎是出于某种原因,来自PyCharm环境变量的LD_LIBRARY_PATH的设置不会真的影响它,并且设置os.environ['LD_LIBRARY_PATH']对从脚本本身设置的导入没有帮助。解决这个问题的是我直接从cmd运行PyCharm,所以它具有相同的LD_LIBRARY_PATH

相关问题