كيفية تحديد ما إذا كان OS X Dylib مرتبطًا بـ -flat_namespace
-
23-09-2019 - |
سؤال
لديّ طرف ثالث 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
لا تنتمي إلى StackOverflow