Linux程序运行找不到动态库.so文件的解决

Linux程序运行找不到动态库.so文件的解决

 更新时间:2023年11月24日 14:33:27   作者:逆光倾城  
这篇文章主要介绍了Linux程序运行找不到动态库.so文件的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

目录
  • Linux程序运行找不到动态库.so文件的三种解决
    • 方法一:添加环境变量
    • 方法二:复制so文件到lib路径
    • 方法三:(推荐)添加ldconfig寻找路径
  • 总结

    Linux程序运行找不到动态库.so文件的三种解决

    方法一:添加环境变量

    子招数1. 

    添加当前用户当前终端的环境变量-临时

    export LD_LIBRARY_PATH=/home/czd/...  #.so file path

    子招数2.

    添加当前用户的环境变量

    修改~/.bashrc文件,在其末尾,添加环境变量

    vim ~/.bashrc
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/czd/...  #.so file path
    

    使其生效,

    source ~/.bashrc

    如不能生效,请重启

    子招数3.

    添加所有用户的环境变量

    修改profile文件,在其末尾添加环境变量

    vim /etc/profile
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/czd/...  #.so file path
    

    使其生效

    source /etc/profile

    如不能生效,请重启

    方法二:复制so文件到lib路径

    linux系统的so库一般存储与“/usr/lib/”路径中,可将动态库复制到该路径中。

    sudo cp liblibtest.so /usr/lib/

    即时生效

    方法三:(推荐)添加ldconfig寻找路径

    步骤1.

    编辑链接配置文件

    vim /etc/ld.so.conf

    步骤2.

    确认内容是否为如下,不是则修改为如下:保存并退出

    include /etc/ld.so.conf.d/*.conf

    步骤3.

    进入目录内,创建*.conf文件,文件名随意,扩展名必须为.conf

    cd /etc/ld.so.conf.d/
    vim libmy.conf 
    

    步骤4.

    在文件内部,添加so的路径,保存并退出

    /home/czd/eclipse-workspacee/calllib/Debug

    步骤5.

    执行命令时期生效

    sudo ldconfig

    程序在运行时寻找so库就会到添加的目录中寻找。

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:

    • 解决Linux可执行文件目录下明明存在*.so文件,但却提示找不到
    • centos安装jdk1.8时出现没有/lib/ld-linux.so.2:这个文件的原因分析
    • linux中把.c的文件编译成.so文件
    • linux下安装mysql及mysql.sock问题
    • Linux下查看.so和可执行文件是否debug编译的方法(必看)
    • CentOS 安装软件出现错误:/lib/ld-linux.so.2: bad ELF interpreter 解决


    • Linux
    • 动态库
    • .so文件

    相关文章

    • Linux基础学习之文件查找find的常见用法

      这篇文章主要给大家介绍了关于Linux基础学习之文件查找find的常见用法的相关资料,例如:根据文件名查找、根据正则表达式查找、根据路径查找、根据文件类型查找以及根据文件大小等等,文中给出了详细的示例代码,需要的朋友可以参考借鉴。 2017-12-12

    • Linux命令搜索命令whereis与which的区别

      这篇文章主要介绍了Linux命令搜索命令whereis与which的区别的相关资料,这里举例说明该如何区别他们之家的用法,需要的朋友可以参考下 2017-08-08

    • 详解如何在Linux(CentOS)下重置MySQL根(Root)密码

      本篇文章主要介绍了详解如何在Linux(CentOS)下重置MySQL根(Root)密码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。 2017-03-03

    • Linux下ZooKeeper分布式集群安装教程

      这篇文章主要为大家详细介绍了Linux下ZooKeeper分布式集群安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 2017-12-12

    • ZFS是什么?使用ZFS的理由及特性介绍

      今天小编就为大家分享一篇关于ZFS是什么,及其特性介绍与使用理由的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧 2018-09-09

    • 利用shadowsocks搭建局域网透明网关

      大家好,本篇文章主要分享的是利用shadowsocks搭建局域网透明网关,感兴趣的小伙伴赶快来看一看吧,对你有帮助的话记得收藏哦 2021-11-11

    • centOS7下Spark安装配置教程详解

      这篇文章主要介绍了centOS7下Spark安装配置教程详解,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下 2018-07-07

    • Linux系统下 centos7下搭建ElasticSearch中间件及常用接口演示

      ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。这篇文章主要介绍了Linux系统下 centos7下搭建ElasticSearch中间件及常用接口演示 ,需要的朋友可以参考下 2019-07-07

    • CentOS服务器环境下MySQL主从同步配置方法

      这篇文章主要介绍了CentOS服务器环境下MySQL主从同步配置方法,较为详细的分析了CentOS服务器环境下MySQL主从同步的配置操作步骤、相关命令、使用方法与注意事项,需要的朋友可以参考下 2018-03-03

    • Linux unlink函数和删除文件的操作方法

      这篇文章主要介绍了Linux unlink函数和删除文件的操作方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 2020-02-02

    最新评论

    版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
    文章名称:《Linux程序运行找不到动态库.so文件的解决》
    文章链接:https://zhuji.vsping.com/196520.html
    本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。