故障解决:error while loading shared libraries: .5

时间:2024-10-23 09:43:15

故障解决:error while loading shared libraries: .5

问题的提出

在我准备调试 Linux-0.11 内核的时候,出现了如下故障(真奇怪,以前没有这个问题啊,怎么突然就这样了,555555555……)

/rungdb

./gdb: error while loading shared libraries: .5: cannot open shared object file: No such file or directory

即执行gdb的时候,报错.5: cannot open shared object file

找不到.5

搜了一波后,解决办法是安装libncurses5:i386

于是我执行命令:

sudo apt-get install libncurses5:i386

安装完成后,再次尝试

./rungdb

继续报错

./gdb: error while loading shared libraries: .1: cannot open shared object file: No such file or directory

找不到.1

至少有2种解决方法:一是安装libexpat1-dev:i386,二是创建一个软连接。

思路一

sudo apt-get install libexpat1-dev:i386

结果就是有了 /lib/i386-linux-gnu/.1

实际上/lib/i386-linux-gnu/.1 是个软连接,它指向/lib/i386-linux-gnu/.1.6.0

思路二

搜索名称包含的文件,我发现了/usr/lib/vmware-tools/lib32/.0/.0,也许可以创建一个软连接(相当于windows系统的快捷方式),让/usr/lib/.1(链接名)指向/usr/lib/vmware-tools/lib32/.0/.0(目标)。

命令是

sudo ln -s /usr/lib/vmware-tools/lib32/.0/.0 /usr/lib/.1

试了一下,问题得到解决。

参考资料

./blog/static/34128913201122310618901/