Отладке ant не удалось включить gdb.setup в файл apk

Я долгое время успешно создавал (с терминала Mac) это собственное приложение, но сегодня я столкнулся с ошибкой, которую не могу определить. Утомившись всеми предупреждениями javac, я перешел на более новую версию ant. Я не уверен, что это связано, но время подозрительно. Я все еще могу создавать, развертывать и запускать свое приложение, но теперь я больше не могу использовать ndk-gdb для отладки собственной части приложения. При проверке выясняется, что файл gdb.setup не добавляется в отладочный apk.

вот последовательность сборки, сокращенный вывод и информация. Ищу предложения, как решить проблему.

Я выполнил полную очистку сборок NDK и ant.

Все версии Android NDK и Android SDK обновлены. Я использую встроенный ndk-bundle, который загружается с инструментами SDK студии Android.

Устройства, на которых мы разрабатываем, не имеют root-прав, и это не вариант.

hsmith $ java -version версия java "1.8.0_45"

Java (TM) SE Runtime Environment (сборка 1.8.0_45-b14) 64-разрядная серверная виртуальная машина Java HotSpot (TM) (сборка 25.45-b02, смешанный режим)

hsmith $ ANT_HOME

-bash: /Users/hsmith/dk/ant/apache-ant-1.9.6: это каталог

hsmith $ ndk-build -j4 NDK_DEBUG = 1

[armebi-v7a] Gdbserver: [arm-linux-androidabi-4.8] библиотеки // gdbserver

[armebi-v7a] Gdbsetup: библиотеки // gdb.setup

[armebi-v7a] Установить: lib1.so => ​​libs / armebi-v7a / lib1.so

[armebi-v7a] Установить: lib2.so => ​​libs / armebi-v7a / lib2.so

[armebi-v7a] Установить: lib3.so => ​​libs / armebi-v7a / lib3.so

hsmith $ ant debug… -package: [apkbuilder] Обнаружен измененный входной файл.

[apkbuilder] Создание -debug-unaligned.apk и подписание его отладочным ключом ...

-почтовый пакет:

-до-отладка:

[zipalign] Выполняется выравнивание zip на финальном apk ...

 [echo] Debug Package: /Users/hsmith/packageFolder/bin/<package>-debug.apk

[файл свойств] Обновление файла свойств: /Users/hsmith/packageFolder/bin/build.prop

[файл свойств] Обновление файла свойств: /Users/hsmith/packageFolder/bin/build.prop

[файл свойств] Обновление файла свойств: /Users/hsmith/packageFolder/bin/build.prop

[файл свойств] Обновление файла свойств: /Users/hsmith/packageFolder/bin/build.prop

-пост-сборка:

отлаживать:

СТРОИТЬ УСПЕШНО

hsmith $ adb install -r ~ / packageFolder / bin / -debug.apk

hsmith $ ndk-gdb adb --start

ОШИБКА: пакет не подлежит отладке! Вы можете исправить это двумя способами:

  • Перестроен с параметром NDK_DEBUG = 1 при вызове ndk-build.

  • Измените манифест, установив для атрибута android: debuggable значение «true»,

    затем восстановите нормально.

После одного из них переустановите на устройство!

Я разархивировал apk файл, чтобы найти

распакованный файл apk / lib / target /

hsmith $ ls -la

всего 48264

drwxr-xr-x 12 сотрудников hsmith 408 25 августа, 14:50.

drwxr-xr-x 5 сотрудников hsmith 170 25 августа 14:50 ..

-rwxr-xr-x 1 персонал hsmith 409940 3 июня, 11:47 gdbserver

-rwxr-xr-x 1 персонал hsmith 33920 25 августа, 14:44 lib1.so

-rwxr-xr-x 1 персонал HSmith 165092 25 августа, 14:44 lib2.so

-rwxr-xr-x 1 персонал hsmith 1614028 25 августа, 14:44 lib3.so

обратите внимание, что нет файла gdb.setup

Я не использую debuggable = true в манифесте, потому что он больше не нужен, однако его включение не влияет на результат.

ОБНОВЛЕНИЕ: https://code.google.com/p/android/issues/detail?id=183455 Это как раз та проблема, с которой я столкнулся. если вы скопируете целевой файл gdb.setup из целевого каталога в каталог ./lib, вы сможете заставить ndk-gdb работать; Переменная COMPAT_ABI в ndk-gdb установлена ​​неправильно и запускает запуск сценария. Надеюсь, они скоро исправят это. почти три дня потрачено на сломанную цепочку инструментов.


person rabidcat    schedule 25.08.2015    source источник
comment
Я чувствую вашу боль ... Совершенно нелепо, как Google управляет своими инструментами ... Спасибо, что обновили ссылку на ответ! Думаю, вам стоит ответить на свой пост самостоятельно: stackoverflow.com/help/self-answer   -  person Olof Hedman    schedule 22.09.2015


Ответы (1)


ОБНОВЛЕНИЕ: https://code.google.com/p/android/issues/detail?id=183455 Это как раз та проблема, с которой я столкнулся. если вы скопируете целевой файл gdb.setup из целевого каталога в каталог ./lib, вы сможете заставить ndk-gdb работать; Переменная COMPAT_ABI в ndk-gdb установлена ​​неправильно и запускает запуск сценария. Надеюсь, они скоро исправят это. почти три дня потрачено на сломанную цепочку инструментов.

person rabidcat    schedule 23.09.2015