2017-08-15 86 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

相關問題