Я отлаживаю приложение Cocoa, которое вызывает системные библиотеки. Я получаю отладочные символы для своего собственного кода, но не из системных библиотек, что мешает мне отлаживать дальше. Как получить отладочные символы для системной библиотеки.Как отлаживать системные библиотеки на OS X?
Я использую gdb, составленный против 10.5 SDK на 10.6.4 (gcc 4.2).
Вот стек трассировка Я хотел бы получить символы:
(gdb) bt
#0 0x93713e43 in CFQSortArray()
#1 0x936f4c49 in CFArraySortValues()
#2 0x958f0bc0 in ColorSyncProfileCopyTagSignatures()
#3 0x9591d218 in CMMProfile::Usable()
#4 0x9591cb5d in DoValidateProfile()
#5 0x9591cc75 in AppleCMMValidateProfile()
#6 0x958f1e52 in ColorSyncProfileVerify()
#7 0x91b13b88 in validateProfile()
#8 0x91b13aed in CMSValidateProfile()
#9 0x93b27f6c in CGCMSInterfaceValidateProfile()
#10 0x93b27f4c in CGCMSUtilsValidateProfile()
#11 0x93b27e4b in CGColorSpaceCreateICCBased()
#12 0x93b27203 in create_generic_color_space()
#13 0x93b26f92 in CGColorSpaceCreateWithIndex()
#14 0x90228ad5 in +[NSColorSpace specialColorSpaceWithID:]()
#15 0x90228a0c in +[NSColorSpace genericRGBColorSpace]()
#16 0x9022881e in -[NSBitmapImageRep _bitmapImageRep_setColorSpaceName:]()
#17 0x904f6e39 in -[NSBitmapImageRep initWithBitmapDataPlanes:pixelsWide:pixelsHigh:bitsPerSample:samplesPerPixel:hasAlpha:isPlanar:colorSpaceName:bitmapFormat:bytesPerRow:bitsPerPixel:]()
#18 0x902282ae in -[NSBitmapImageRep _initWithSharedBitmap:rect:]()
#19 0x90227efe in -[NSImage _addRepresentationWithSharedKitWindow:rect:]()
#20 0x90226d06 in +[NSImage _findSystemImageNamed:]()
#21 0x90226a48 in +[NSImage imageNamed:]()
#22 0x902268ea in -[NSCustomResource _loadImageWithName:]()
#23 0x9022681e in -[NSCustomResource loadImageWithName:]()
#24 0x90225d5f in -[NSCustomResource awakeAfterUsingCoder:]()
#25 0x915a2208 in _decodeObjectBinary()
#26 0x915a14e4 in _decodeObject()
#27 0x9022556f in -[NSMenuItem initWithCoder:]()
#28 0x915a21ec in _decodeObjectBinary()
#29 0x915a2ff8 in -[NSKeyedUnarchiver _decodeArrayOfObjectsForKey:]()
#30 0x915a3665 in -[NSArray(NSArray) initWithCoder:]()
#31 0x915a21ec in _decodeObjectBinary()
#32 0x915a14e4 in _decodeObject()
#33 0x90229ff0 in -[NSMenu initWithCoder:]()
#34 0x915a21ec in _decodeObjectBinary()
#35 0x915a2ff8 in -[NSKeyedUnarchiver _decodeArrayOfObjectsForKey:]()
#36 0x915a3665 in -[NSArray(NSArray) initWithCoder:]()
#37 0x915a21ec in _decodeObjectBinary()
#38 0x915a14e4 in _decodeObject()
#39 0x9021ff29 in -[NSIBObjectData initWithCoder:]()
#40 0x915a21ec in _decodeObjectBinary()
#41 0x915a14e4 in _decodeObject()
#42 0x9021f4a8 in loadNib()
#43 0x9021eb5b in +[NSBundle(NSNibLoading) _loadNibFile:nameTable:withZone:ownerBundle:]()
#44 0x9021e811 in +[NSBundle(NSNibLoading) loadNibFile:externalNameTable:withZone:]()
Вам лучше задавать вопрос о проблеме, с которой вы столкнулись, что привело вас к поиску этой информации в первую очередь. –
@Ben: Мне вряд ли удастся получить ответ на вопрос «при замене дистрибутива памяти Firefox на 32-битный Mac, почему я получаю этот segfault?», Хотя, если бы вы могли ответить на него, я был бы очень благодарен :) –
Untru :. Я уже думал о выравнивании объектов как возможного виновника. –