GDB-Stub Eclipse

(Firma: EleLa - www.elela.de) #1675781
Lesenswert?
• ▲
▼
Das hier:
http://www.segger.com/cms/jlink-pro.html

Hat Ethernet, Debug über Ethernet also möglich...

Was es für Installationen für Eclipse braucht ist hier beschrieben: 
STM32
Natürlich ohne den OpenOCD. Dafür mit dem Segger GDB Server.

Wie man parametriert ist hier beschrieben:
Beitrag "Re: CortexM3 Startprobleme (YAGARTO+ECLIPSE+J-LINK)"
Gast #1675956
Lesenswert?
• ▲
▼
Man kann auf dem Zielsystem unter Linux laufende Anwendungen auch ohne 
JTAG-Interface debuggen. Z.B. kann die Anwendung "unter Kontrolle" von 
gdbserver auf der Zielhardardware starten. gdbserver stellt einen Port 
zur Verfügung. IP/Name und Port gibt man in der Connections-Einstellung 
einer Ecplipse Debug-Konfiguration an. remote debugging linux Eclipse in 
Suchmaschine der Wahl eingeben hilft, es findet sich einiges. Durchlesen 
der Target Management (TM) Seiten (Startlink auf eclipse.org) wird auch 
nützlich sein.
Gast #1675973
Lesenswert?
• ▲
▼
Was willst du debuggen? Den Linux Kernel, oder eine Applikation?


Markus Müller schrieb:
> Wenn die CPU Ethernet hat, dann muss sie laufen um das Ethernet bedienen
> zu können, also kann damit nicht debuggt werden. Denn bei einem
> Breakpoint steht die CPU und nix mehr geht. Also benötigt es ein
> externen JTAG mit Ethernetanschluss.

Der Linux Kernel oder die Applikation steht aber nicht der GDB Stub und 
die Schnittstelle über welche GDB kommuniziert! Die Schnittstelle wird 
dann normalerweise auch nur für die GDB Kommunikation verwendet.
Gast #1676414
Lesenswert?
• ▲
▼
http://bhagwat-masalkar.blogspot.com/2008/05/remote-debugging-for-arm-target-board.html

Wenn ich den anweisungen auf dieser Seite folge bricht der Vorgang mit 
Fehlern ab.

if [ x"" != x ]; then \
          gcc -c -DHAVE_CONFIG_H -g -O2  -I. -I./../include  -W -Wall 
-Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic   ./strncmp.c 
-o pic/strncmp.o; \
        else true; fi
gcc -c -DHAVE_CONFIG_H -g -O2  -I. -I./../include  -W -Wall 
-Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic  ./strncmp.c 
-o strncmp.o
rm -f ./libiberty.a pic/./libiberty.a
i386-ar rc ./libiberty.a \
          ./regex.o ./cplus-dem.o ./cp-demangle.o ./md5.o ./sha1.o 
./alloca.o ./argv.o ./choose-temp.o ./concat.o ./cp-demint.o ./crc32.o 
./dyn-string.o ./fdmatch.o ./fibheap.o ./filename_cmp.o ./floatformat.o 
./fnmatch.o ./fopen_unlocked.o ./getopt.o ./getopt1.o ./getpwd.o 
./getruntime.o ./hashtab.o ./hex.o ./lbasename.o ./lrealpath.o 
./make-relative-prefix.o ./make-temp-file.o ./objalloc.o ./obstack.o 
./partition.o ./pexecute.o ./physmem.o ./pex-common.o ./pex-one.o 
./pex-unix.o ./safe-ctype.o ./sort.o ./spaces.o ./splay-tree.o 
./strerror.o ./strsignal.o ./unlink-if-ordinary.o ./xatexit.o ./xexit.o 
./xmalloc.o ./xmemdup.o ./xstrdup.o ./xstrerror.o ./xstrndup.o 
./mkstemps.o ./strncmp.o
make[2]: i386-ar: Command not found
make[2]: *** [libiberty.a] Error 127
make[2]: Leaving directory `/root/Download/gdb-7.1/libiberty'
make[1]: *** [all-libiberty] Error 2
make[1]: Leaving directory `/root/Download/gdb-7.1'
make: *** [all] Error 2
Gast #1676460
Lesenswert?
• ▲
▼
OK,dassProblem habe ich gelößt
stat
./configure --host=i386 --target=arm-linux --build=i686
     --prefix=/home/<path>/arm-tools/bin/arm-linux-gdb
Das:
./configure --host=i386 --target=arm-linux --build=i386
     --prefix=/home/<path>/arm-tools/bin/arm-linux-gdb

Das neue Problem:
checking for iconv... yes
checking for iconv declaration... install-shextern size_t iconv (iconv_t 
cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t 
*outbytesleft);
checking for library containing waddstr... no
configure: WARNING: no enhanced curses library found; disabling TUI
checking for library containing tgetent... no
configure: error: no termcap library found
make[1]: *** [configure-gdb] Error 1
make[1]: Leaving directory `/root/Download/gdb-7.1'
make: *** [all] Error 2
Gast #1676551
Lesenswert?
• ▲
▼
$ cd gdb-6.8/gdb/gdbserver

    $ export CC=arm-linux-gcc   // if required

    $ export LD=arm-linux-ld    // if required

    $ ./configure --build=i686 --host=arm-linux --target=arm-linux

    $ make

Nach dem ./configure --build=i686 --host=arm-linux --target=arm-linux

dieses Problem

/configure --build=i686 --host=arm-linux --target=arm-linux
checking for arm-linux-gcc... arm-linux-gcc
checking for C compiler default output file name...
configure: error: in `/root/Download/gdb-7.1/gdb/gdbserver':
configure: error: C compiler cannot create executables
See `config.log' for more details.

in der .log steht:

configure:2200: checking for arm-linux-gcc
configure:2227: result: arm-linux-gcc
configure:2496: checking for C compiler version
configure:2505: arm-linux-gcc --version >&5
./configure: line 2507: arm-linux-gcc: command not found
configure:2516: $? = 127
configure:2505: arm-linux-gcc -v >&5
./configure: line 2507: arm-linux-gcc: command not found
configure:2516: $? = 127
configure:2505: arm-linux-gcc -V >&5
./configure: line 2507: arm-linux-gcc: command not found
configure:2516: $? = 127
configure:2505: arm-linux-gcc -qversion >&5
./configure: line 2507: arm-linux-gcc: command not found
configure:2516: $? = 127
configure:2536: checking for C compiler default output file name
configure:2558: arm-linux-gcc    conftest.c  >&5
./configure: line 2560: arm-linux-gcc: command not found
configure:2562: $? = 127
configure:2599: result:
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
"config.log" 207L, 4685C

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.