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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren