我下载了一个程序不幸的是,它不是作为源代码发行版提供的。当我去运行它时,我收到错误
加载共享库时出错:libjpeg.so.62:无法打开共享对象文件:没有这样的文件或目录
该程序似乎已链接到我的发行版没有的特定版本的 libjpeg。创建一个/usr/lib32/libjpeg.so.62
以我的实际名称命名的符号链接libjpeg.so
可以解决问题,但是只是/usr/lib32
为了让一个程序工作而四处寻找似乎很愚蠢而且太过分了。
有什么方法(无需重新编译)使程序动态链接libjpeg.so
而不是libjpeg.so.62
?
FWIW,file
该程序的信息是
ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
答案1
对文件进行二进制编辑(例如vim -b
),并将任何出现的 替换/usr/lib32/libjpeg.so.62
为与您的libjpeg.so
大小完全相同的路径,例如/usr/lib//////libjpeg.so
/usr/lib32/libjpeg.so.62
/usr/lib//////libjpeg.so