Eclipse & Seqoyah - Пытается подключиться к gdbserver до запуска приложения на устройстве - PullRequest
1 голос
/ 02 сентября 2011

Я настроил Eclipse для отладки нативной стороны моего приложения с помощью Eclipse & Seqoyah и добавил соответствующую конфигурацию отладки приложений C / C ++.

Проблема в том, что Eclipse пытается инициироватьсоединение с сервером приложений GDB еще до его запуска.Я не уверен, как изменить порядок, в котором Eclipse пытается что-то сделать с помощью конфигураций отладки.Будем благодарны за любую помощь (как всегда).

http://wiki.eclipse.org/Sequoyah/ndk_guide

31-gdb-set confirm off
31^done
(gdb) 
32-gdb-set width 0
32^done
(gdb) 
33-gdb-set height 0
33^done
(gdb) 
34-interpreter-exec console echo
34^done
(gdb) 
35-gdb-show prompt
35^done,value="(gdb) "
(gdb) 
36-gdb-set auto-solib-add on
36^done
(gdb) 
37-gdb-set stop-on-solib-events 0
37^done
(gdb) 
38-gdb-set stop-on-solib-events 1
38^done
(gdb) 
39-target-select remote localhost:5039
&"Remote communication error: Connection reset by peer.\n"
39^error,msg="Remote communication error: Connection reset by peer."
(gdb) 
40-gdb-exit
40^exit
Remote communication error: Connection reset by peer.

1 Ответ

1 голос
/ 05 сентября 2011

Мне удалось решить это.

Для вашего собственного проекта Java / C ++ должно быть две конфигурации отладки. Первый - для стороны Java, а второй - для стороны C ++.

  1. Убедитесь, что вы настроили свою среду в соответствии с: http://wiki.eclipse.org/Sequoyah/ndk_guide

  2. Установите точку останова сразу после добавления общей библиотеки JNI или в ваши действия в onCreate.

  3. Отладка приложения с использованием конфигурации отладки по умолчанию.

  4. В оболочке перейдите в каталог вашего проекта и введите $ NDK / ndk-gdb (где $ NDK - это местоположение вашего комплекта разработки для Android).

  5. Отладка приложения с помощью встроенного отладчика, созданного вами в руководстве по Sequoyah.

Если все пойдет хорошо, вы сможете войти в код JNI, а когда ваше приложение рухнет, посмотрите, где в вашем исходном коде оно упало.

Я еще не нашел способ настройки через реальный источник, если кто-нибудь, пожалуйста, напишите здесь.

...