我有一个文件,它可能是用C编译的。该文件需要一个.so文件(库文件(。C Compiled文件名为/usr/local/solar/excusekey
,.so库文件为/usr/local/libsolar/libexcuse.so
当我删除/usr/local/libsolar/libexcuse.so
,然后运行/usr/local/solar/excusekey
时,它会显示一个错误:
ERROR : ld.so object '/usr/local/libsolar/libexcuse.so' from
LD_PRELOAD cannot be preloaded: ignored.
但当我运行未设置的CCD_ 5并再次运行CCD_。
/usr/local/solar/excusekey
是否在它的C代码中加载lib借口.so库?或者还有其他技巧或方法?
/usr/local/solar/excusekey是否在其C代码中加载libexcuse.so库?
如果对excusekey
一无所知,我们就无法判断。
可以编写一个应用程序来检查LD_PRELOAD
是否包含所需的库,如果不包含,则设置LD_PRELOAD
并重新设置exec
本身。
这是否就是这里发生的事情,谁也猜不透。
在strace -s1024 -fve execve excusekey
下运行应用程序可以提供应用程序正在做什么的线索。