• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    CentOS下如何添加动态链接库?

    一些C/C++编译好后,当运行时,报错说无法加载共享库,例如:

    [plain] view plaincopy  
    ./write: error while loading shared libraries: libhdfs.so.0.0.0: cannot open shared object file: No such file or directory  

    发生这种报错的原因是,编译的程序运行期间需要依赖某个共享库, 比如上面,write可执行程序需要依赖一个叫“libhdfs.so”的共享库。(动态链接库与静态链接库的区别,请百度相关文档)

    解决上面的问题有两种方式,下面两种的任何一种都可以:

    第一:在/etc/profile中添加共享库的路径:

    [plain] view plaincopy  
    export LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amd64/server:/home/dcc/libhdfs

    如上,添加了两个路劲下的共享库,注意,路劲之间用冒号(“:”)隔开。

    第二:在/etc/ld.so.conf中添加路径,然后重新加载共享库:

    [plain] view plaincopy在CODE上查看代码片派生到我的代码片  
    vi /etc/ld.so.conf  

    编辑后如下:

    [plain] view plaincopy在CODE上查看代码片派生到我的代码片  
    include ld.so.conf.d/*.conf  
    /home/dcc/libhdfs  
    /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/amd64/server/ 

    入上,分别添加了两个路径,每个路径占一行。编辑完后,重新加载库:

    [plain] view plaincopy在CODE上查看代码片派生到我的代码片  
    /sbin/ldconfig -v  

    至于两种方法的区别,我推测, 第一种是只在执行C/C++程序时才会加载,而第二种应该是针对整个系统,启动时就加载。

    上一篇:CentOS启动后直接进入命令行模式的方法
    下一篇:CentOS桌面菜单如何编辑和配置?
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    CentOS下如何添加动态链接库? CentOS,下,如何,添加,动态,