Domanda

Ho una terza dylib OS X parti che sto usando nella mia app e non hanno facile accesso al suo creatore. Mi piacerebbe per determinare se è stato collegato con -flat_namespace. È possibile? Se sì, come?

È stato utile?

Soluzione

Esegui otool -hV sulla libreria. Se non vedi TWOLEVEL, allora è stato collegato con -flat-namespace. Ad esempio:

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

vs

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
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top