lld解决程序启动依赖库的问题

场景说明:查找程序依赖库是非常麻烦的,如果需要的又是一些不长使用的库,对于整个系统的移植是非常苦难的。目前尝试使用lld去查找所有依赖的库,然后将这些依赖的库提取,放在同一个文件夹中,然后制定依赖的路径,解决问题。

Ldd [选项] 文件

选项有-v:打印ldd 的版本号;-d:执行符号重部署,并报告缺少的目标对象(只对ELF 格式适用);-r:对目标对象和函数执行重新部署,并报告缺少的目标对象和函数(只对ELF 格式适用);-h:帮助信息。

执行如下命令来查看应用程序所关联的库:

Ldd –v 程序名

lld解决程序启动依赖库的问题

时间: 2024-07-30 13:37:33

lld解决程序启动依赖库的问题的相关文章

使用strace命令解决linux服务器依赖库问题

使用strace命令解决linux服务器依赖库问题 简单说明:strace的另一个用处是解决和动态库相关的问题.当对一个可执行文件运行ldd时,它会告诉你程序使用的动态库和找到动态库的位置.但是如果你正在使用一个比较老 的glibc版本(2.2或更早),你可能会有一个有bug的ldd程序,它可能会报告在一个目录下发现一个动态库,但是真正运行程序时动态连接程序 (/lib/ld-linux.so.2)却可能到另外一个目录去找动态连接库.这通常因为/etc/ld.so.conf和 /etc/ld.s

linux下用于二进制程序及其依赖库的移植的脚本

#!/bin/bash ##指定移植目录 DEST=/mnt/sysroot #依赖库文件拷贝 libcp() { LIBPATH=${1%/*} [ ! -d $DEST$LIBPATH ] && mkdir -p $DEST$LIBPATH [ ! -e $DEST${1} ] && cp $1 $DEST$LIBPATH && echo "copy lib $1 finished." } #程序本身的拷贝 bincp() { CMD

使用解决linux服务器依赖库问题

strace的另一个用处是解决和动态库相关的问题.当对一个可执行文件运行ldd时,它会告诉你程序使用的动态库和找到动态库的位置.但是如果你正在使用一个比较老 的glibc版本(2.2或更早),你可能会有一个有bug的ldd程序,它可能会报告在一个目录下发现一个动态库,但是真正运行程序时动态连接程序 (/lib/ld-linux.so.2)却可能到另外一个目录去找动态连接库.这通常因为/etc/ld.so.conf和 /etc/ld.so.cache文件不一致,或者/etc/ld.so.cache

完美解决程序启动,Activity之间切换,黑屏问题

默认情况下 activity 启动的时候先把屏幕刷成白色或黑色,再绘制界面,绘制界面或多或少有点延迟,这段时间中你看到的就是白屏,显然影响用户体验,怎么消除呢? 在 Activity theme 设置style 即可 <style name="AppTheme" parent="android:Theme.Light.NoTitleBar"> <item name="android:windowIsTranslucent">

redis 简单解决程序的依赖问题

同事让我帮忙给他做个功能,义无反顾的接受了. 功能大致这样的,用户登录的时候需要依赖服务A,服务A不稳定,而且服务A需要用户登录的信息,不能去掉服务A的业务逻辑. 可以模拟这样的场景,人家登录你的网站,输了用户名和密码,后台逻辑走到了服务A,此时A服务挂了,而你设置的超时时间为10S,太残忍了,第一个用户等待10S,第二个用户等待10S,100个用户全部等待10S,这样的网站绝对是不友好的. 解决方案1:不推荐 在java类中设置全局变量,服务A发生超时异常设置全局变量为false,根据这个状态

Qt程序发行Linux版,软件打包知识(patchelf 工具修改依赖库,确认 qmake -v 是自己使用的Qt版本,否则用export PATH进行修改)good

patchelf 工具可以修改已编译运行程序的依赖库位置和指定库链接器 patchelf --set-rpath patchelf --set-interpreter 通过这个工具 https://github.com/probonopd/linuxdeployqt 如果自己编译不了,也可以下载现成的 https://github.com/probonopd/linuxdeployqt/releases 运行 ./linuxdeployqt-2-x86_64.AppImage ShanbayDi

Android开发之解决APP启动白屏或者黑屏闪现的问题

在做搜芽的过程中,发现那个外包人缘做的不行,因为启动的时候会停顿,然后白屏一会,联想到几个月前我在我的三僚企业通信软件里面拉起9K-Mail的时候也会黑屏,所以决定学习一下.解决一下.这不,万能的网络还是非常有用的. 在这里总结一下. (参考及转载:http://www.2cto.com/kf/201409/339293.html) 欢迎页启动的线程由于请求和处理的数据量过大而,导致欢迎页在出现之前界面上会有一个短暂的白色闪屏停留,当然白色闪屏的停留是因为 application 的主题样式an

Android程序 依赖库引用Gson 报java.lang.NoClassDefFoundError: com/google/gson/Gson 解决方法

Android 程序所依赖一个Library程序B , B 程序中用到格式化json串,转换成标准json串的要求 public static String jsonFormatter(String uglyJSONString) { Gson gson = new GsonBuilder().setPrettyPrinting().create(); JsonParser jp = new JsonParser(); JsonElement je = jp.parse(uglyJSONStri

解决Python开发过程中依赖库打包问题的方法

在Python开发的过程中,经常会遇到各种各样的小问题,比如在一台计算机上调试好的程序,迁移到另外一台机子上后往往会应为工程项目依赖库的缺失而造成错误. 除了一遍又一遍对着被抛出错误去重新install各种相关的依赖库,有没有更好的方法来解决Python开发过程中依赖库的打包呢?答案是肯定的. 类似于JavaScript的npm,Python也有它强大的包管理工具--pip,我们可以用pip导出项目中的dependency: 1 $ pip freeze > requirements.txt 然