Подтвердить что ты не робот

Как использовать Eclipse для отладки кода JNI (Java и C/С++)

Пока я могу отлаживать свое приложение с помощью отладчика Eclipse JDT для кода Java и кода GDB для C, я бы предпочел использовать один инструмент для всей моей отладки. Я нашел несколько проектов, которые позволяют "отлаживать смешанные режимы" в Eclipse и включать поддержку единого шага между Java и собственным кодом.

К сожалению, утверждается, что это качество предварительного выпуска, а другое в настоящее время не поддерживается. Существуют ли какие-либо плагины, которые обеспечивают надежную реализацию функций отладки смешанного режима для Eclipse или я должен продолжать использовать два отдельных отладчика?

4b9b3361

Ответ 1

Я не думаю, что сегодня есть что-то, что исправит, но я знаю, что у Дуга Шефера это очень много в его списке вещей, которые он хочет сделать. Следите за его блог для получения обновлений об этом.

Ответ 2

Для тех, кто хочет отладить код NDK/JNI в выпуске Eclipse Juno, он по существу встроен в программное обеспечение после установки плагинов Android и плагинов CDT. У вас могут быть проблемы, так как существует проблема, которая была введена с помощью инструментов разработки C/С++ (CDT 8.1), которые с 7/24/12 не были исправлены. Подробнее о проблеме см. Следующую ссылку. Если вы просто хотите отлаживать, продолжайте читать.

http://code.google.com/p/android/issues/detail?id=33788

Если он работает правильно, вы просто устанавливаете свои точки останова в C и Отладочном As → Android Native Application. К сожалению, вы не можете отлаживать java и C одновременно. Если проблема в Java и вы хотите отладить это, нажмите Отладка As → Приложение Android.

Если он работает некорректно и вы хотите выяснить, как правильно его получить, следующие пакеты работали для меня.

  Android DDMS  20.0.1.v201207132230-403220
  Android Development Tools 20.0.1.v201207132230-403220 
  Android Hierarchy Viewer  20.0.1.v201207132230-403220 
  Android Native Development Tools  20.0.1.v201207132230-403220 
  Android Traceview 20.0.1.v201207132230-403220 
  Autotools support for CDT (Incubation)    3.0.1.201202152032  
  C/C++ Development Tools   8.0.2.201202111925  
  C/C++ Development Tools SDK   8.0.2.201202111925
  C/C++ Library API Documentation Hover Help (Incubation)   
  Eclipse SDK   4.2.0.I20120608-1400    
  Tracer for OpenGL ES  20.0.1.v201207132230-403220

Андроидные пакеты появились в настройке параметра "Работа с:" в диалоговом окне Eclipse Справка- > Установить новое программное обеспечение... на

dl-ssl.google.com/android/eclipse/

Более старые пакеты 8.02... CDT пришли от установки опции "Работа с:" в пакеты выпуска Indigo.

download.eclipse.org/releases/indigo

При установке вам необходимо будет удалить инструменты Android и новую версию CDT перед установкой старой версии CDT. После установки версии 8.0... CDT, вы можете установить инструменты Android и начать отладку.

Убедитесь, что вы используете команду "ndk-build NDK_DEBUG = 1"

Autotools может не понадобиться, но поскольку он установлен, я его перечисляю.

Обратите внимание на то, что пошаговое выполнение кода иногда может быть причудливым.

Ответ 4

С новым пакетом Android ADT (по состоянию на 05/12/2013) больше нет необходимости в более старом программном пакете 8.02. Если вы обнаружите, что редактируете текстовые файлы для работы отладки, вы выполняете старые инструкции, которые больше не применяются. Используйте андроид ADT и Debug As- > Android Native Application. Возможно, вам еще нужно установить NDK_DEBUG = 1, если это еще не сделано в настройке.

Ответ 5

Eclipse Sequoyah 1.0 имеет функции Android android ndk.Eclipse 3.6 и 3.5 релиз в начале июня.