gpt4 book ai didi

gcc - 强加库加载顺序

转载 作者:行者123 更新时间:2023-12-04 17:59:16 27 4
gpt4 key购买 nike

我有一个链接到动态库的 gcc 编译的应用程序。有没有办法强制加载库的顺序? (在我的情况下,一个库构造函数使用其他库构造函数设置的资源)。

谢谢。

最佳答案

gcc也不负责加载库,ld.so在您的程序加载时自动执行,或者您按照@jldupont 的建议手动执行。

ld.so可能是故意的randomise防止返回标准库攻击的命令。

所以要么:

  • 自己加载库。
  • 或者删除库加载脚本之间的依赖关系。
  • 使库本身包含依赖项(可能有效,可能无效)
    那就是当您要链接每个共享库时,请确保它包含 -l<dependentlib>在链接命令中。您可以通过创建一个仅与该共享库链接的普通程序来测试这一点 - 如果它构建并运行,则该库包含所有必要的依赖库。如果 ld.so 按依赖顺序加载库,这可能会有所帮助 - 我认为它必须这样做。
  • 关于gcc - 强加库加载顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1859433/

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