2012-03-22 4 views
4

NDK (Android Native Development Kit) для ARM поставляется с программным обеспечением gcc и GNU utils, включая пожилую GDB. Однако GDB, похоже, не может показать содержимое регистров в расширениях VFP или NEON SIMD, то есть при отладке программы с использованием инструкций NEON/VFP отображается только подмножество регистров. Я считаю, что для получения этой способности требуется более новая версия GDB. Используемое оборудование поддерживает NEON.ARM NEON отладка для Android NDK

Это правда, мне нужен новый gdb, а как отправлен GDB в Googles NDK не может этого сделать?

Есть ли встроенный GDB для отладки кода VFP/NEON на устройствах ARM Android или процедуры создания инструментальной цепи NDK с обновленным GDB, который может это сделать? (для 64-битного хоста Windows/Linux)

+1

https://launchpad.net/gdb-linaro звучит как есть альтернативы. Или возьмите себе устройство на основе tegra2 :) – zapl

+1

Tegra2 не имеет NEON ... – Sam

+0

Я думаю, что zapl просто шутил. @OP: Пожалуйста, будьте более явными, если вы хотите получить ответ. –

ответ

2

Похоже, что NDK GDB в комплекте не может показывать регистры NEON. Этот link на сайте разработчика ARM подразумевает такое, заявив, что gdbserver, поставляемый в пакете DS5, добавляет эту способность.

В gdbserver, представленном в DS-5 основан на новую версию gdbserver GNU и предоставляет дополнительные возможности многопоточных, доступ к регистрам ARM NEON (при наличии), а также улучшение стабильности

3

Android NDK (проверено на r8) поставляется со старым gdb и gdbserver (v6.6), который не поддерживает NEON. Для того, чтобы использовать его, вы можете построить либо строить из источников GdB и Android пластырей, или получить предварительно построенный один:

  1. Скачать prebuilt gdb 7.4.1 for Android archive
  2. Открыть (NDK) \ компилированные инструменты \ рычажного linux- androideabi-4.4.3 \ прекомпилированное \ Windows \ бен каталог
  3. Переименовать рычажного линукс-androideabi-gdb.exe к рычажного линукс-androideabi-GDB-OLD.exe
  4. Скопируйте новый GDB. exe в текущую папку.
  5. Открыть (NDK) \ toolchains \ arm-linux-androideabi-4.4.3 \ prebuilt.
  6. Переименовать gdbserver файл в gdbserver_old
  7. Скопируйте новый gdbserver в текущей папке
Смежные вопросы