Каковы преимущества LLDB над GDB в разработке под iOS? - PullRequest
21 голосов
/ 21 февраля 2012

В Xcode 4.3 теперь вы можете включить использование LLDB в качестве отладчика для целей iOS.

enter image description here

Какие преимущества он имеет по сравнению со старым добрым GDB? GDB по-прежнему работает с LLVM, и я не вижу очевидных различий в «повседневных» задачах отладки.

1 Ответ

10 голосов
/ 21 февраля 2012

Наиболее заметным преимуществом является то, что LLDB понимает синтаксис точек в свойствах:

po self.property


Цитата из блога проекта LLVM :

LLDB поддерживает базовые сценарии отладки командной строки на Mac, поддерживает сценарии и имеет отличную поддержку многопоточной отладки. LLDB уже намного быстрее, чем GDB при отладке больших программ, и обещает обеспечить гораздо лучший пользовательский опыт (особенно для программистов на C ++). Мы рады видеть новые платформы, новые функции и улучшения, в которых заинтересовано более широкое сообщество LLVM.

Еще одна цитата с домашней страницы LLDB :

LLDB - высокопроизводительный отладчик следующего поколения. Он построен как набор повторно используемых компонентов, которые эффективно используют существующие библиотеки в более крупном проекте LLVM, такие как анализатор выражений Clang и дизассемблер LLVM.

Почему новый отладчик
Для достижения наших целей мы решили начать с новой архитектуры, которая будет поддерживать современные многопоточные программы, эффективно обрабатывать символы отладки, использовать знания кода, основанные на компиляторе, и иметь поддержку плагинов для функциональности и расширений. Кроме того, мы хотим, чтобы возможности отладчика были доступны другим инструментам анализа, будь то скрипты или скомпилированные программы, без необходимости, чтобы они были GPL.

...