當libcudnn我遇到嘗試運行TensorFlow程序時出現以下錯誤:導入錯誤:運行TensorFlow程序
ImportError: libcudnn.Version: cannot open shared object file: No such file or director
當libcudnn我遇到嘗試運行TensorFlow程序時出現以下錯誤:導入錯誤:運行TensorFlow程序
ImportError: libcudnn.Version: cannot open shared object file: No such file or director
您可能沒有安裝cuDNN的正確版本。
要確定cuDNN的正確版本,請參閱NVIDIA要求在支持GPU的情況下運行TensorFlow。
此時Tensorflow不支持cuDNN 6.如果你的錯誤是它找不到libcudnn.so.5
,而你只安裝了cuDNN 6,它提供了libcudnn.so.6
,你需要安裝cuDNN 5,直到引入cuDNN 6支持。有一個open bug report,您可以在Tensorflow Github頁面上查看它們何時開始支持cuDNN 6.
我不確定要安裝哪一個,所以我只是跟5.1一起去,因爲這就是文檔所說的。 Buuut的文檔也表示使用cuda 7.x.當有太多版本的東西時,很難建立這些環境,並且文檔有輕微的錯誤! http://developer2.download.nvidia.com/compute/machine-learning/cudnn/secure/v5.1/prod/doc/cudnn_install.txt?F3FJdd7MWqtI7nGkyMVGrQTBf7x4TpOQKPwjNxyLlD5Jm6wFHZvYyj6XLd47Vy0yxeGMLfH4CiaIPyQQk-FiC2gIB3y16u4Lc-4Vlh1CHgkCseXk76Z9AdsxYDiRmSlrrlbAgmx8lw6yy8hFhkSOmNd0U5zMiZ8HDZH_x7F34QLM2lWE。 –
我只是將所需的版本文件添加到安裝路徑並且它可以工作。直到他們支持cudnn 6這是我發現的最好的方法 –
@ user2918461你的鏈接已經死了/ – NightFantom
確保$LD_LIBRARY_PATH
環境變量設置爲正確的路徑。
所有平臺
Extract the cuDNN archive to a directory of your choice, referred to below as <installpath>.
Then follow the platform-specific instructions as follows.
LINUX
cd <installpath>
export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH
Add <installpath> to your build and link process by adding -I<installpath> to your compile
line and -L<installpath> -lcudnn to your link line.
OS X
cd <installpath>
export DYLD_LIBRARY_PATH=`pwd`:$DYLD_LIBRARY_PATH
Add <installpath> to your build and link process by adding -I<installpath> to your compile
line and -L<installpath> -lcudnn to your link line.
WINDOWS
Add <installpath> to the PATH environment variable.
In your Visual Studio project properties, add <installpath> to the Include Directories
and Library Directories lists and add cudnn.lib to Linker->Input->Additional Dependencies.
我必須將LD_LIBRARY_PATH設置爲
我遇到了這個問題。在我的情況下,我的日食給了這個錯誤,但是在終端中張量流暢地運行。 因此,在cuDNN安裝或粘貼/usr/local/cuda/lib64
和/usr/local/cuda/include
中與cudNN相關的文件後,我發現命令sudo ldconfig -v
也必須在終端中執行。
之後,它應該工作。
這是假設一個已經設置以下環境變量按照通過NVIDIA的CUDA安裝過程的規範:LD_LIBRARY_PATH
,PATH
,CUDA_HOME
嘗試其他一切後,這終於爲我工作。謝謝! –
只需download cuDNN 5.1,然後按照步驟(測試在Ubuntu 16.04,CUDA工具包8.0)
$ tar xvzf cudnn-8.0-linux-x64-v5.1-ga.tgz
$ sudo cp -P cuda/include/cudnn.h /usr/local/cuda/include
$ sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
現在設置路徑變量
$ vim ~/.bashrc
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64"
export CUDA_HOME=/usr/local/cuda
,做
欲瞭解更多詳情,您可以檢查此site
儘管TensorFlow指令顯式聲明「確保您創建NVIDIA文檔中所述的CUDA_HOME環境變量」。這一步很容易失敗。如上所述,通過@ankit執行,所有將會膨脹。 在繼續之前,不要忘記用'source〜/ .bashrc'重新加載新添加的env vars。 – Stacky
@empty從[這裏]下載(https://developer.nvidia.com/compute/machine-learning/cudnn/secure/v5.1/prod_20161129/8.0/cudnn-8.0-linux-x64-v5.1-tgz ) –
該解決方案需要適應當前TensorFlow預期的cuDNN版本。截至2017年11月31日,它需要cuDNN 6.帶有「導入張量流」的錯誤消息將指示所需的版本。例如,「ImportError:libcudnn.so.6:無法打開共享對象文件:沒有這樣的文件或目錄」表示它期望libcudnn.so.6 –
我能夠改變從cudNN 6.0我cudNN安裝cudNN 5.1來解決問題。 cudNN 6.0具有文件libcudnn.so.6,而cudNN 5.1具有文件libcudnn.so.5。
看來TensorFlow現在支持cudNN 6.0。我用cudNN 5.1得到錯誤。
使用TensorFlow版本1。3.0。
如果您收到
ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory
嘗試使用6.0
正確!這是張量流安裝指南中的一個錯誤(他們應該將推薦的cudnn更新爲6,因爲它不適用於5.1)。我浪費了好幾個小時。 – ezfn
即使CUDA(8.0)和cudnn(5.1)的正確版本,這個錯誤使用PIP從https安裝方法時,仍然發生://www.tensorflow.org/install/install_linux#installing_with_native_pip – mstreffo