AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1025928
Accepted
Hossein
Hossein
Asked: 2018-04-18 12:29:23 +0800 CST2018-04-18 12:29:23 +0800 CST 2018-04-18 12:29:23 +0800 CST

为什么我得到“/sbin/ldconfig.real: /usr/local/cuda/lib64/libcudnn.so.7 不是符号链接”?

  • 772

安装CUDA工具包并cuDNN成功安装后没有任何问题,每当我这样做时:

sudo ldconfig 

我得到:

/sbin/ldconfig.real: /usr/local/cuda/lib64/libcudnn.so.7 is not a symbolic link

错误信息。
是什么原因,我该如何解决?

顺便说一句,我是这样安装cuDNN的:

 # cuDNN, extracts to a folder named cuda
 tar xvf cudnn*.tgz  
 cd cuda  
 sudo cp lib64/* /usr/local/cuda/lib64
 sudo cp include/* /usr/local/cuda/include

ls -lha libcudnn*in的输出/usr/local/cuda/lib64如下:

breeze@breeze:/usr/local/cuda/lib64$ ls -lha libcudnn*
-rwxr-xr-x 1 root root 275M آوریل 15 12:03 libcudnn.so
-rwxr-xr-x 1 root root 275M آوریل 15 12:03 libcudnn.so.7
-rwxr-xr-x 1 root root 275M آوریل 15 12:03 libcudnn.so.7.0.5
-rw-r--r-- 1 root root 268M آوریل 15 12:03 libcudnn_static.a
nvidia cuda 16.04
  • 2 2 个回答
  • 38973 Views

2 个回答

  • Voted
  1. Best Answer
    Hossein
    2018-04-18T13:00:19+08:002018-04-18T13:00:19+08:00

    感谢亲爱的上帝,我使用此链接找到了解决方案。

    复制 cuDNN 文件后运行 sudo ldconfig 可能会发生这种情况。

    安装后cuDNN,将提取的文件复制到 /usr/lib/cuda/lib64并创建符号链接后,符号链接可能会出错。

    所以去/usr/local/cuda/lib64/跑吧ls -lha libcudnn*。

    您应该看到两个符号链接(粗体蓝绿色)和一个文件。像这样的东西:

    /usr/local/cuda/lib64$ ls -lha libcudnn*
    lrwxrwxrwx 1 root root  13 Dez 25 23:56 libcudnn.so -> libcudnn.so.5
    lrwxrwxrwx 1 root root  17 Dez 25 23:55 libcudnn.so.5 -> libcudnn.so.5.1.5
    -rwxr-xr-x 1 root root 76M Dez 25 23:27 libcudnn.so.5.1.5
    

    libcudnn.so.5.1.5 的确切版本对您来说可能有点不同(可能是 libcudnn.so.5.1.10)。在这种情况下,相应地调整代码

    如果libcudnn.so并且libcudnn.so.5不是符号链接,那么这就是您收到此错误的原因。如果是这样,这就是你需要做的:

    /usr/local/cuda/lib64$ sudo rm libcudnn.so
    /usr/local/cuda/lib64$ sudo rm libcudnn.so.5
    /usr/local/cuda/lib64$ sudo ln libcudnn.so.5.1.5 libcudnn.so.5
    /usr/local/cuda/lib64$ sudo ln libcudnn.so.5 libcudnn.so
    Run sudo ldconfig again and there should be no errors
    

    运行后 ls -lha libcudnn*看到/usr/local/cuda/lib64:

    breeze@breeze:/usr/local/cuda/lib64$ ls -lha libcudnn*
    -rwxr-xr-x 1 root root 275M آوریل 15 12:03 libcudnn.so
    -rwxr-xr-x 1 root root 275M آوریل 15 12:03 libcudnn.so.7
    -rwxr-xr-x 1 root root 275M آوریل 15 12:03 libcudnn.so.7.0.5
    -rw-r--r-- 1 root root 268M آوریل 15 12:03 libcudnn_static.a
    

    我必须做 :

    breeze@breeze:/usr/local/cuda/lib64$ sudo rm libcudnn.so
    [sudo] password for breeze: 
    breeze@breeze:/usr/local/cuda/lib64$ sudo rm libcudnn.so.7
    breeze@breeze:/usr/local/cuda/lib64$ sudo ln libcudnn.so.7.0.5 libcudnn.so.7
    breeze@breeze:/usr/local/cuda/lib64$ sudo ln libcudnn.so.7 libcudnn.so
    breeze@breeze:/usr/local/cuda/lib64$ sudo ldconfig
    

    一切都恢复正常了:)

    • 33
  2. skytree
    2019-01-28T12:49:47+08:002019-01-28T12:49:47+08:00

    查看

    wxf:/usr/local/cuda/lib64$ ls -al libcudnn.so*
    ...
    ...
    -rwxr-xr-x  3 root root 302770160 Jan 27 14:30 libcudnn.so          NO link
    -rwxr-xr-x  3 root root 302770160 Jan 27 14:30 libcudnn.so.7        NO link
    -rwxr-xr-x  3 root root 302770160 Jan 27 14:30 libcudnn.so.7.3.1
    -rwxr-xr-x  1 root root 349141232 Jan 27 14:30 libcudnn.so.7.4.2
    ...
    ...
    

    没有链接->

    (检查所有链接sudo ldconfig -v:)

    因为

    (从 nvidia 下载的 cudnn 有符号链接)

    wxf:~/cudnn/cuda/lib64$ ls -al
    total 974632
    drwxrwxr-x 2 wxf wxf      4096 Jan 19 19:50 .
    drwxrwxr-x 4 wxf wxf      4096 Jan 19 19:50 ..
    lrwxrwxrwx 1 wxf wxf        13 Dec 12 01:58 libcudnn.so -> libcudnn.so.7
    lrwxrwxrwx 1 wxf wxf        17 Dec 12 01:58 libcudnn.so.7 -> libcudnn.so.7.4.2
    -rwxrwxr-x 1 wxf wxf 302770160 Sep 21 01:36 libcudnn.so.7.3.1
    -rwxrwxr-x 1 wxf wxf 349141232 Dec 12 01:30 libcudnn.so.7.4.2
    -rw-rw-r-- 1 wxf wxf 346085818 Dec 12 01:30 libcudnn_static.a
    

    当我们复制时,我们丢失了符号信息。

    去/usr/local/cuda/lib64

    sudo ln -sf libcudnn.so.7.4.2 libcudnn.so.7
    
    sudo ln -sf libcudnn.so.7 libcudnn.so
    

    现在,

    wxf:/usr/local/cuda/lib64$ ls -al libcudnn.so*
    ...
    ...
    lrwxrwxrwx  1 root root        13 Jan 27 14:43 libcudnn.so -> libcudnn.so.7
    lrwxrwxrwx  1 root root        17 Jan 27 14:43 libcudnn.so.7 -> libcudnn.so.7.4.2
    -rwxr-xr-x  1 root root 302770160 Jan 27 14:30 libcudnn.so.7.3.1
    -rwxr-xr-x  1 root root 349141232 Jan 27 14:30 libcudnn.so.7.4.2
    ...
    
    • 7

相关问题

  • 普利茅斯将来会允许使用专有图形驱动程序获得良好的启动体验吗?

  • 未连接到任何可见进程的令人讨厌的 CPU 峰值

  • 10.04 Lucid 中的多席位状态如何?[关闭]

  • 升级到 10.04 后字体模糊,Nvidia 问题?

  • 帮助让 Flash 播放器在第二个屏幕上工作?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve