реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Eclipse, удалённая отладка
Dubov
сообщение Apr 2 2013, 19:16
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Хочу запустить удалённую отладку. кое-как настроил SSH, ругается что не может запустить sftp.
Оказалось что на маём таргете(ARM9) установлен tftpd и установить sftp не представляется возможным. как быть?
Go to the top of the page
 
+Quote Post
alx2
сообщение Apr 3 2013, 03:22
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091



Цитата(Dubov @ Apr 3 2013, 00:16) *
Хочу запустить удалённую отладку. кое-как настроил SSH, ругается что не может запустить sftp.
Оказалось что на маём таргете(ARM9) установлен tftpd и установить sftp не представляется возможным. как быть?

А, простите за любопытство, как связана удаленная отладка и sftp? Зачем Вам непременно нужен sftp для отладки?
И почему не представляется возможным?


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post
Dubov
сообщение Apr 3 2013, 05:55
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Цитата(alx2 @ Apr 3 2013, 07:22) *
А, простите за любопытство, как связана удаленная отладка и sftp? Зачем Вам непременно нужен sftp для отладки?
И почему не представляется возможным?

sftp нет в составе buildroot. наверное можно собрать руками, но пока не представляю как.
Когда запускаю отладку в Eclipse, то подключение по SSH проходит хорошо, но появляется ошибка, якобы приложение не может найти sftp на таргете.
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Apr 3 2013, 07:33
Сообщение #4


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(Dubov @ Apr 3 2013, 08:55) *
sftp нет в составе buildroot. наверное можно собрать руками, но пока не представляю как.
Когда запускаю отладку в Eclipse, то подключение по SSH проходит хорошо, но появляется ошибка, якобы приложение не может найти sftp на таргете.

Есть, называется GESFTPSERVER. Подробнее об удалённой отладке здесь.
Я делал всё по написанному, работает.
Go to the top of the page
 
+Quote Post
Dubov
сообщение Apr 3 2013, 15:54
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Цитата(IgorKossak @ Apr 3 2013, 11:33) *
Есть, называется GESFTPSERVER. Подробнее об удалённой отладке здесь.
Я делал всё по написанному, работает.

пробовал сделать по вашему, т.е. работать полностью через buildroot, используя плгин к Eclipse и соответствующий тулчейн. Не получается плагин установить.
Получаю сообщение:

Software being installed: Buildroot SDK Feature 2.0.0.201303202033 (org.buildroot.bundle.feature.feature.group 2.0.0.201303202033)
Missing requirement: Buildroot SDK Feature 2.0.0.201303202033 (org.buildroot.bundle.feature.feature.group 2.0.0.201303202033) requires 'org.eclipse.cdt.autotools.feature.group 0.0.0' but it could not be found


для моего случая, когда я хотел использовать свой компилятор и встроенные средства Eclipse (gdb server и загрузку по ssh) необходим пакет openssh-sftp-server. Изначально следовал этой статье: http://takeworld.blogspot.de/2011/09/arm-linux-eclipse.html

Сообщение отредактировал Dubov - Apr 3 2013, 16:05
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Apr 3 2013, 17:08
Сообщение #6


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(Dubov @ Apr 3 2013, 17:54) *
Не получается плагин установить.
Получаю сообщение:

Software being installed: Buildroot SDK Feature 2.0.0.201303202033 (org.buildroot.bundle.feature.feature.group 2.0.0.201303202033)
Missing requirement: Buildroot SDK Feature 2.0.0.201303202033 (org.buildroot.bundle.feature.feature.group 2.0.0.201303202033) requires 'org.eclipse.cdt.autotools.feature.group 0.0.0' but it could not be found

Здесь два пути:
1. Не устанавливать плагин autotools, у меня и без него отладка работала.
2. sudo apt-get install autotools-dev, потом снова попытаться установить плагин к Эклипс. Должно подхватиться.
Go to the top of the page
 
+Quote Post
Dubov
сообщение Apr 4 2013, 05:22
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Стал пытаться понять как настроить отладку первоначальным методом(без плагина buildroot для Eclipse).
Оказалось, что sftp на таргете присутствует. Он входит в пакет openssh. Только вот в чём была проблема: почему-то бинарник sftp-server программа искала в /usr/libexec/ на таргете, а фактически бинарник лежал в /usr/lib, копирование бинарника в /usr/libexec помогло. Толкьо непонятно, где прописывается месторасположение sftp-server (в конфиге sshd_config прописан путь /usr/lib/sftp-server)

Теперь бинарник отлаживаемой программы копируется на таргет без проблем, но теперь возникает сообщение что удалённый порт не отвечает (порт где должен сидеть удалённый gdb).
В каком файле должна находится конфигурация GDB и на каком порту по умолчанию сидит GDB сервер?

Сообщение отредактировал Dubov - Apr 4 2013, 05:34
Go to the top of the page
 
+Quote Post
alx2
сообщение Apr 4 2013, 10:14
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091



Цитата(Dubov @ Apr 4 2013, 10:22) *
Теперь бинарник отлаживаемой программы копируется на таргет без проблем, но теперь возникает сообщение что удалённый порт не отвечает (порт где должен сидеть удалённый gdb).

А gdbserver-то запущен?

Цитата(Dubov @ Apr 4 2013, 10:22) *
В каком файле должна находится конфигурация GDB

1. Общесистемный gdbinit (расположение задается при конфигурации опцией --with-system-gdbinit);
2. .gdbinit в домашнем директории пользователя;
3. .gdbinit в текущем директории.

Цитата(Dubov @ Apr 4 2013, 10:22) *
и на каком порту по умолчанию сидит GDB сервер?

ИМХО у gdbserver нет порта по умолчанию. То есть порт ему надо указывать всегда. Например gdbserver :12345


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post
Dubov
сообщение Apr 4 2013, 20:44
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Запуск прошёл удачно.
Надеюсь опытные люди помогут с проблемами во время отладки. Получаю такие предупреждения:
CODE
warning: Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code.
Cannot access memory at address 0x0
warning: Could not load shared library symbols for 2 libraries, e.g. /lib/libc.so.6.
Use the "info sharedlibrary" command to see the complete listing.
Do you need "set solib-search-path" or "set sysroot"?
Single stepping until exit from function main,
which has no line number information.


и ещё такую ошибку: No source available for "main() at 0x8360"

вот код:
CODE
/*
* hello.c
*
* Created on: Mar 31, 2013
* Author: user
*/

#include <stdio.h>

int main(void)

{
int i;
for(;;);
printf("Hello, World!\n");



return 0;

}


Go to the top of the page
 
+Quote Post
Dubov
сообщение Apr 6 2013, 17:53
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Проблема решена добавление ключа -ggdb при компиляции. Надеюсь кому-то поможет мой опыт.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 21:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01431 секунд с 7
ELECTRONIX ©2004-2016