如何确定OS X dylib是否与-flat_namespace

问题描述:

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

在库上运行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 
+0

正是我一直在寻找。谢谢尼古拉斯! – 2010-04-05 13:35:02