LDD命令--可执行文件依赖的库出现错误时
http://littlepig3056.blog.163.com/blog/static/180758353201212751814134/
ldd 查看可执行文件依赖的库,结果会列出依赖的库名及依赖库所在路径
ldd命令执行时,从环境变量LD_LIBRARY_PATH查找可执行文件链接的库。
所以要让可执行文件链接到正确的库有两种方式:
1. 编写setenv.sh脚本设置环境变量LD_LIBRARY_PATH
采用这种方式,要求每次启动新会话后,都必须执行source setenv.sh命令行,使得设置对于当前会话生效。
2. 修改用户根目录的.bash_profile文件
export LD_LIBRARY_PATH=/home/zk/lib:$ORACLE_HOME
这样每次会话被打开后,会自动设置.bash_profile中的环境变量。不用每次手工执行source setenv.sh。但是,如果多个程序员使用同样的账号部署程序时,需要注意保持所有程序员依赖的库的版本的一致性。
ldd 查看可执行程序
wappp@ppcn-12-208:/work/stat/read/ucshuqisearch> ldd hello linux-gate.so.1 => (0xb7719000) liblog4c.so.3 => /usr/local/log4c/lib/liblog4c.so.3 (0xb76e8000) libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb753e000) libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb7522000) /lib/ld-linux.so.2 (0xb771a000)
如果系统里没有库,就会提示 xx.so.3 not found
posted on 2013-07-30 13:21 codestyle 阅读(1550) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述