美文网首页C/C++ || 编译、链接、执行 || docker
【转载】etc/ld.so.conf的使用说明 libcudn

【转载】etc/ld.so.conf的使用说明 libcudn

作者: dopami | 来源:发表于2018-03-20 14:03 被阅读6次

    etc/ld.so.conf:

    这个文件记录了编译时使用的动态链接库的路径。

    默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件

    如果你安装了某些库,比如在安装gtk+-2.4.13时它会需要glib-2.0 >= 2.4.0,辛苦的安装好glib后

    没有指定 --prefix=/usr 这样glib库就装到了/usr/local下,而又没有在/etc/ld.so.conf中添加/usr/local/lib

    =================

    库文件的路径如 /usr/lib 或 /usr/local/lib 应该在 /etc/ld.so.conf 文件中,这样 ldd 才能找到这个库。在检查了这一点后,要以 root 的身份运行 /sbin/ldconfig 。

    将/usr/local/lib加入到/etc/ld.so.conf中,这样安装gtk时就会去搜索/usr/local/lib,同样可以找到需要的库

    将/usr/local/lib加入到/etc/ld.so.conf也是必须的,这样以后安装东东到local下,就不会出现这样的问题了。

    ldconfig是个什么东东吧 :

    它是一个程序,通常它位于/sbin下,是root用户使用的东东。具体作用及用法可以man ldconfig查到

    简单的说,它的作用就是将/etc/ld.so.conf列出的路径下的库文件 缓存到/etc/ld.so.cache 以供使用

    因此当安装完一些库文件,(例如刚安装好glib),或者修改ld.so.conf增加新的库路径后,需要运行一下/sbin/ldconfig

    使所有的库文件都被缓存到ld.so.cache中,如果没做,即使库文件明明就在/usr/lib下的,也是不会被使用的,结果

    编译过程中抱错,缺少xxx库,去查看发现明明就在那放着,搞的想大骂computer蠢猪一个。

    二. libcudnn.so.5 is not a symbolic link的解决方法是重新链接它的目标

    在cudnn目录中查询链接 发现为空

    [html] view plain copy

    cd /usr/local/cuda/lib64  

    ls -l libcudnn.so  

    -rwxr-xr-x 1 root root 84163560  5月 13 20:26 libcudnn.so  

    ls -l libcudnn.so.5   

    -rwxr-xr-x 1 root root 84163560  5月 13 20:26 libcudnn.so.5  

    重新覆盖 添加软链接

    [html] view plain copy

    sudo ln -sf libcudnn.so.5.10 libcudnn.so.5  

    sudo ln -sf libcudnn.so.5 libcudnn.so  

    相关文章

      网友评论

        本文标题:【转载】etc/ld.so.conf的使用说明 libcudn

        本文链接:https://www.haomeiwen.com/subject/kpxbqftx.html