Wie Sie feststellen, ob ein OS X dylib mit -flat_namespace verlinkt
-
23-09-2019 - |
Frage
Ich habe eine dritte Partei OS X dylib, dass ich in meiner app bin mit und verfügen nicht über einen einfachen Zugang zu seinem Schöpfer. Ich möchte feststellen, ob es mit -flat_namespace verlinkt. Ist das möglich? Wenn ja, wie?
Lösung
Ausführen otool -hV
auf der Bibliothek. Wenn Sie nicht TWOLEVEL
sehen, dann wurde es mit -flat-namespace
verknüpft. Zum Beispiel:
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
Vergleich
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
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow