mv: error while loading shared libraries: libc.so.6

41 篇文章 2 订阅

想把libc.so换成低版本的测试下程序反应,

 mv /lib/x86_64-linux-gnu/libc.so.6  /lib/x86_64-linux-gnu/libc.so.6_bk

然后就全部

ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
mv: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
mv: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
好多命令都报错, 尴尬了,回不去了,得重装系统了吗????

使用下面命令修改回去了,^_^

LD_PRELOAD=/lib/x86_64-linux-gnu/libc.so.6_bk mv /lib/x86_64-linux-gnu/libc.so.6_bk  /lib/x86_64-linux-gnu/libc.so.6

LD_PRELOAD 为linux调用so的库文件时提供一个路径.

LD_PRELOAD,是个环境变量,用于动态库的加载,动态库加载的优先级最高,一般情况下,其加载顺序为LD_PRELOAD>LD_LIBRARY_PATH>/etc/ld.so.cache>/lib>/usr/lib。程序中我们经常要调用一些外部库的函数,以malloc为例,如果我们有个自定义的malloc函数,把它编译成动态库后,通过LD_PRELOAD加载,当程序中调用malloc函数时,调用的其实是我们自定义的函数


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值