【问题标题】:How to determine if an OS X dylib was linked with -flat_namespace如何确定 OS X dylib 是否与 -flat_namespace 链接
【发布时间】:2010-03-31 13:59:40
【问题描述】:

我在我的应用程序中使用了第三方 OS X dylib,并且无法轻松访问其创建者。我想确定它是否与 -flat_namespace 相关联。那可能吗?如果有,怎么做?

【问题讨论】:

    标签: xcode macos dynamic-linking dylib dyld


    【解决方案1】:

    在库上运行 otool -hV。如果您没有看到TWOLEVEL,那么它与-flat-namespace 相关联。例如:

    twolevel.dylib:
    Mach header
          magic cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
    MH_MAGIC_64  X86_64        ALL  0x00       DYLIB     8        672   NOUNDEFS DYLDLINK TWOLEVEL NO_REEXPORTED_DYLIBS
    

    flat.dylib:
    Mach header
          magic cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
    MH_MAGIC_64  X86_64        ALL  0x00       DYLIB     8        672 DYLDLINK NO_REEXPORTED_DYLIBS
    

    【讨论】:

    • 正是我想要的。谢谢尼古拉斯!
    猜你喜欢
    • 2018-04-22
    • 1970-01-01
    • 2013-09-06
    • 2015-03-14
    • 2015-01-05
    • 2011-06-08
    • 2017-10-03
    • 1970-01-01
    • 2011-08-15
    相关资源
    最近更新 更多