У меня проблема с удаленной отладкой.
Хост: ноутбук Intel i5 с Ubuntu 10.10 x86 Цель: Freescale iMX35 (iMX35 PDK) arm 11 Среда разработки: библиотеки Qt Creator 2.1RC и Qt4.7.1.Запустите компилятор в пути: /opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/bin
arm-none-linux-gnueabi-gcc-4.1.2 arm-none-linux-gnueabi-objdump arm-none-linux-gnueabi-addr2line arm-none-linux-gnueabi-gccbug
arm-none-linux-gnueabi-ranlib arm-none-linux-gnueabi-ar
arm-none-linux-gnueabi-gcov arm-none-linux-gnueabi-readelf arm-none-linux-gnueabi-as
arm-none-linux-gnueabi-run arm-none-linux-gnueabi-c ++
arm-none-linux-gnueabi-size arm-none-linux-gnueabi-c ++ Filt
arm-none-linux-gnueabi-gprof arm-none-linux-gnueabi-stringsarm-none-linux-gnueabi-cpp arm-none-linux-gnueabi-ld
arm-none-linux-gnueabi-strip arm-none-linux-gnueabi-g ++
arm-none-linux-gnueabi-nm arm-none-linux-gnueabi-gcc
arm-none-linux-gnueabi-objcopy
Цель состоит в том, чтобы отладить проект, созданный с помощью Qt.Поэтому я просто создал приложение Qt Quick Project -> Qt Quick, которое создает простое приложение Hello World (C ++ / Qml), я кросс-компилирую его (в отладке или в выпуске), и оно отлично работает на цели.Поэтому я совершенно уверен, что кросс-компиляция не связана с проблемой, которую я вам покажу.
Я скачал GDB 7.2 и выполнил следующую операцию:
$ export PATH = / opt / freescale / usr / local / gcc-4.1.2-glibc-2.5-nptl-3 / arm-none-linux-gnueabi / bin: $ PATH
$ cd /home/elux/iMX35/gdb-7.2/
$ ./configure --target = arm-none-linux-gnueabi -build = i686
$ make
$ sudo make install
$ export CC = arm-none-linux-gnueabi-gcc
$ export LD = arm-none-linux-gnueabi-ld
$ cd gdb / gdbserver /
$ ./configure --build = i386 --host = arm-none-linux-gnueabi --target = arm-none-linux- gnueabi
$ make
$ sudo cp gdbserver / home / elux / MX35 / ltib / rootfs / usr / bin / (для копирования gdbserver в целевое устройство)
Затем на целевом объекте:
$ gdbserver 10.10.10.1:4000 Test
Process Test создан;pid = 2194
Прослушивание через порт 4000
На цели:
$ arm-none-linux-gnueabi-gdb Test (Test кросс-скомпилированQt Creator в режиме отладки) GNU GDB (GDB) 7.2
Copyright (C) 2010 Free Software Foundation, Inc.
Лицензия GPLv3 +: GNU GPL версии 3 или более поздней http://gnu.org/licenses/gpl.html
Это бесплатное программное обеспечение: выВы можете свободно изменять и распространять его.
ГАРАНТИИ НЕ ПРЕДОСТАВЛЯЮТСЯ, насколько это разрешено законом.Для подробностей введите "show copying"
и "show гарантии".
Эта GDB была настроена как "--host = i686 --target = arm-none-linux-gnueabi".
Для инструкций по сообщению об ошибкахсм.
http://www.gnu.org/software/gdb/bugs/...
Чтение символов из /home/elux/iMX35/ltib/rpm/BUILD/qt-everywhere-opensource-src-4.7.1 / platform / Test-build-arm / Test... done.
(gdb) target remote 10.10.10.2:4000
Удаленная отладка с использованием 10.10.10.2:4000
предупреждение: не удается проанализировать описание цели XML;Поддержка XML была отключена во время компиляции
предупреждение: не удается найти функцию точки останова динамического компоновщика.
GDB не сможет отлаживать инициализаторы общей библиотеки
и отслеживание явно загруженного динамического кода.
0x400007e0 в ??()
(gdb)
и
(gdb) набор solib-absolute-prefix / home / elux / iMX35 / ltib / rootfs /
Чтение символов из /home/elux/iMX35/ltib/rootfs/lib/ld-linux.so.3...done.
Загруженные символы для / home / elux / iMX35 / ltib / rootfs / lib / ld-linux.so.3
но
(gdb) установить архитектуру armv5te
Предполагается, что целевой архитектурой будет armv5te
Remote 'г' Пакет ответа слишком долго: 00000000a7ee8ebe0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0ed8ebe00000000e007004010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1090 * (GDB) б главный
Remote 'г' пакета ответа слишком долго: 00000000a7ee8ebe0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b0ed8ebe00000000e007004010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Есть ли у Вас какие-либо идеис чем связана эта проблема?Как я могу решить это?