У меня в домашнем каталоге довольно большой .gdbinit (поэтому здесь не копируется).
Теперь, если я хочу отлаживать код внутри Xcode, я получаю эту ошибку:
Failed to load debugging library at:
/Developer/Applications/Xcode.app/Contents/PlugIns/GDBMIDebugging.xcplugin/Contents/Resources/PBGDBIntrospectionSupport.A.dylib
Custom data formatters are disabled.
Error message was:
0x1005c5 "dlopen(/Developer/Applications/Xcode.app/Contents/PlugIns/GDBMIDebugging.xcplugin/Contents/Resources/PBGDBIntrospectionSupport.A.dylib, 16): image not found"
На самом деле - как указано ниже - отладка все еще работает в Xcode, но не работает форматирование данных. Перемещение .gdbinit ИЛИ отключение форматеров данных возвращает gdb в Xcode обратно в рабочее состояние, но это, очевидно, боль (включая средства форматирования данных в первом случае)
Есть идеи, какие настройки в gdbinit могут вызвать эту ошибку в Xcode?
Примечание из ответа: похоже (из поиска в Google) эта ошибка может произойти при связывании с библиотекой wxWidgets. То, что я здесь не делаю.
Примечание: при необходимости я могу предоставить копию моего (длинного) .gdbinit
WIP: я подробно рассмотрю свой .gdbinit, чтобы узнать, смогу ли я сузить проблему
Странно ... Осматривая свой Mac, я вижу, что эта библиотека в порядке, и она выглядит нормально.
Вы пробовали использовать dtrace, чтобы узнать, что Xcode и GDB пытаются делать, когда возникает ошибка?
Что касается отладки xcode и gdb, я могу прибегнуть к этому, если мне когда-нибудь удастся сделать это правильно.
Возможно, вы это уже заметили, но на всякий случай:
Прежде всего, даже когда вы видите эту ошибку (при условии, что вы щелкнули мимо нее и продолжили), вам следует по-прежнему иметь возможность использовать 99% функций отладки в Xcode. Другими словами, эта ошибка означает, что только очень небольшая конкретная часть отладчика «сломана» для данного сеанса отладки. нет означает, что отладка полностью остановлена и / или невозможна для выполнения данной программы.
Учитывая вышеупомянутый факт, если вы просто хотите избавиться от ошибки и вас не волнует, работают ли пользовательские форматеры данных или нет, СНИМИТЕ галочку рядом со следующим пунктом меню:
Разработчики в моем офисе испытывали ту же самую ошибку Xcode довольно долгое время, пока кто-то не обнаружил, что причиной были некоторые сторонние библиотеки.
В нашем случае эта ошибка возникала только для проектов, использующих wxWidgets. Я не имею в виду, что использование wxWidgets - единственная возможная причина. Я всего лишь пытаюсь предоставить дополнительную информацию, которая может привести к правильному решению для вашего случая.
Также интересно: мы (в моем офисе) получали эту ошибку без какого-либо использования или присутствия какого-либо файла .gdbinit.
Оказывается, «свойство» wxWidgets, которое заставило его вызвать эту ошибку, было связано с «настраиваемой / универсальной» реализацией «dlopen». До Mac OS X 10.3, dlopen не был предоставлен в операционной системе, поэтому очевидно, что некоторые библиотеки кодировали свои собственные версии. Когда такие библиотеки используются, очевидно, что вызов dlopen, который пытается открыть PBGDBIntrospectionSupport.A.dylib, может завершиться ошибкой.
Кроме того, вот еще одна связанная ссылка:
Сообщение в списке рассылки пользователей Xcode о PBGDBIntrospectionSupport и Custom Data Formatters
Очень хороший ответ, спасибо. На самом деле я знал о проблеме с wxWidget (единственные результаты в Google), но я не использую ее. И я также увидел, что отладка продолжает работать, просто нарушает Data Formatter, что на самом деле мне нужно. Я посмотрю на свой gdbinit в деталях
Ваша ошибка на самом деле немного отличается от той, которую я получал с wxWidgets. Прошло некоторое время с тех пор, как я обнаружил конфликт dlopen, но я помню, что мне пришлось использовать сам gdb в этом конкретном сеансе отладки, чтобы выяснить, что происходит. Кроме того, из-за проблемы с wxWidgets шестнадцатеричный адрес каждый раз отличался.
В gdb вызовите «информационный символ» по шестнадцатеричному адресу, указанному в сообщении об ошибке. Это может дать вам подробную информацию о том, что именно не загружается.
Библиотека есть и у меня, нет проблем с целостностью файла (если я удалю gdbinit, отладка Xcode полностью работает)