gpt4 book ai didi

c - 链接器或加载器如何处理共享库的损坏软链接(soft link)?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:54:11 29 4
gpt4 key购买 nike

我在系统的三个不同路径中有相同的共享库。假设路径是 PATH1、PATH2 和 PATH3。

共享库名称是 libmylib.so

现在,如果我在 PATH1 中用损坏的软链接(soft link)替换 ​​libmylib.so,它会在 PATH2 中搜索库。

但是,在 PATH1 中,如果我将 libmylib.so 替换为其他一些名为 libmylib.so 的文本文件(或一些不相关的文件),则应用程序执行失败并显示“不是 ELF header ”

我对这种行为有点困惑?为什么它会在软链接(soft link)损坏的情况下搜索其他路径,而在文件不正确的情况下会失败。我期待它也能在其他路径中搜索不正确的文件。

最佳答案

它可能只是尝试打开它。悬挂符号链接(symbolic link)或不存在,它会返回相同的错误。如果你想做一些不同的事情,你需要明确地测试符号链接(symbolic link)。很少有程序关心。

关于c - 链接器或加载器如何处理共享库的损坏软链接(soft link)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5313331/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com