class-dump exception

Egy folyamatban lévő munkához volt szükségem egy friss AppKit.framework class-dumpra, de a program elszállt.

Hibajelenség:
class-dumpot frameworkon futtatva a következő exceptiont adja:

2012-09-28 20:41:02.484 class-dump[21769:707] *** Terminating app due to uncaught exception 'NSRangeException', reason: 'Trying to read past end in -[CDDataCursor readLittleInt32]'
*** First throw call stack:
(
	0   CoreFoundation                      0x00007fff8f52bf56 __exceptionPreprocess + 198
	1   libobjc.A.dylib                     0x00007fff8614ad5e objc_exception_throw + 43
	2   CoreFoundation                      0x00007fff8f52bd8a +[NSException raise:format:arguments:] + 106
	3   CoreFoundation                      0x00007fff8f52bd14 +[NSException raise:format:] + 116
	4   class-dump                          0x000000010000ed41 class-dump + 60737
	5   class-dump                          0x000000010001a3d2 class-dump + 107474
	6   class-dump                          0x0000000100009399 class-dump + 37785
	7   class-dump                          0x000000010001a8dd class-dump + 108765
	8   class-dump                          0x0000000100001fa8 class-dump + 8104
	9   class-dump                          0x000000010000d217 class-dump + 53783
	10  class-dump                          0x0000000100001464 class-dump + 5220
)

Hiba oka: olyan frameworkon próbálod futtatni ami SDK és az XCode szállítja. Ezek MH_DYLIB_STUB típusúak és nem tartalmaznak futásidejű információt.
Hiba megoldása: /System alatt található framework-ön futtassad. pl:

class-dump /System/Library/Frameworks/AppKit.framework/AppKit

Megj.: Mindez persze nem vonatkozik az iOS SDK-ra.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.