【问题标题】:Trace dylib loading on Mac OSX在 Mac OSX 上跟踪 dylib 加载
【发布时间】:2014-03-17 04:49:11
【问题描述】:

我正在尝试在 Mac OSX 上构建基于 Qt 的应用程序,而我的应用程序包中的某些内容是从 /Library 而不是应用程序包中提取 Qt 库。

我过去已经成功地做到了这一点,所以我知道使用 install_name_tool 将应用程序和库链接到库的捆绑版本。我已经做到了,但我一定错过了一些东西。我已经尝试设置 DYLD_PRINT_LIBRARIES,但我不确定这有什么帮助:我可以看到首先从 /Library (QtXml) 中提取了哪个 Qt 库,但我不知道捆绑中的哪个文件正在拉入这个库。

是否有一些技巧可以追溯哪个文件正在加载特定的库?

【问题讨论】:

    标签: macos qt dylib


    【解决方案1】:

    使用 otool 实用程序查看您的应用使用了哪些库以及应用希望在哪里找到它们:

    otool -L yourApp.app/Contents/MacOS/yourApp

    【讨论】:

    • 是的,问题是我的应用程序包中有这么多库和插件,我不知道问题出在哪里......我的实际二进制文件很好(并且在设置 DYLD_PRINT_LIBRARIES我可以看到它正在引入正确版本的库)。我想要的是从第一个“错误”的 dylib 中追溯,找出是什么把它拉进来了。
    猜你喜欢
    • 1970-01-01
    • 2011-08-19
    • 2012-05-20
    • 1970-01-01
    • 2014-10-08
    • 2020-05-24
    • 2012-11-16
    • 1970-01-01
    • 2019-04-03
    相关资源
    最近更新 更多