Segger J-Link unter Linux

OP #1940929
Lesenswert?

Hallo,

ich möchte mit dem LPC1768 (Cortex M3) und dem Segger J-Link EDU in die 
Welt der ARM's einsteigen.

Hat jemand den Segger J-Link unter Linux im Einsatz ?

Kann mir jemand einen Compiler und einen grafischen Debugger empfehlen, 
welcher unter Linux mit dem Segger J-Link funktioniert ?


Gruß,

Matthias
Gast #1941260
Lesenswert?

habe auch den JLink und wollte ihn mit einem
STM3210E Board benutzen. Leider ist das unter Linux bei mir ziemlich
instabil, sowohl mit OpenOCD als auch mit dem JLink-eigenen GDBServer. 
Der Ethernut Turtelizer läuft dagegen bei mir sehr zuverlässig, obwohl 
es sich dabei um
einen Billig-Dongle auf FTDI-Basis handelt.
JLink mit Windows+IAR geht dagegen stabil.

Unter Linux kann natürlich jedes grafische Frontend, das auf GDB 
aufsetzt, verwendet werden, z.B. auch der DDD.

HDH,

Jax
OP #1941292
Lesenswert?

Hallo Jax,

wie äußert sich das "ziemlich instabil" denn ?

Wie kann ich denn DDD mit dem gdb von Sourcery G++ Lite verwenden ?
Muss DDD für das ARM-Zielsystem neu kompiliert werden, oder kann ich 
direkt den DDD meiner Distribution (Debian Squeeze) nehmen?

Bei der Eclipse-Installation in dem Link von Markus sieht es ja so aus, 
als wenn das gdb-Frtontend von Eclipse nicht speziell für das 
ARM-Zielsystem kompiliert werden muss ?

Gibt es irgendwo im Internet eine Anleitung zum Thema J-Link unter Linux 
mit freien Tools ?


Gruß,

Matthias
(Firma: EleLa - www.elela.de) #1941298
Lesenswert?

Das kann ich auch schreiben:
geht - geht nicht - ausstecken - software beenden - einstecken - geht - 
geht nicht - geht halb - geht ....

Bei meiner Windows-Installation (ist so wie im Artikel STM32 
beschrieben) musste ich nichts extra kompillieren, nur laden und 
installieren.

Wenn Du das mit Linux hin bekommen hast, kannst Du das mit in die Wiki 
STM32 aufnehmen?
Gast #1941401
Lesenswert?

Hallo Matthias,

Matthias K. schrieb:
> wie äußert sich das "ziemlich instabil" denn ?
>

Markus hat das richtig beschrieben.
Komischerweise war der Windows JLink-GDBServer genauso
instabil (abgesehen, dass er dauernd mit dem "Lizenz-Fenster"
genervt hat, auch mehrfach per Session -ich habe die EDU Version).

Wie gesagt: Der Turtelizer läuft bei mir sehr gut, kostet
dafür aber auch nur 30EUR.
Leider kann er kein SWD, was einerseits an der noch fehlenden
SWD Unterstützung in OpenOCD, andererseits auch wohl
an der Turt Hardware liegt (SWDIO ist bidirektional,
der Turt hat einen Treiber an der entsprechenden Leitung, der nur
unidirektional ist). SWD wäre im Vergleich zu JTAG
vor allem im Zush. mit SWO interessant...

> Wie kann ich denn DDD mit dem gdb von Sourcery G++ Lite verwenden ?

Ganz einfach:

$ ddd --debugger arm-none-eabi-gdb <elf-file>


> Muss DDD für das ARM-Zielsystem neu kompiliert werden, oder kann ich
> direkt den DDD meiner Distribution (Debian Squeeze) nehmen?

Nein. Die Target-Abhängigkeiten stecken ja im arm-none-eabi-gdb.
DDD ist ein separates Programm, das im Hintergrund den
per --debugger Option spezifizierten Debugger am Laufen hat.
Einfach mal z.B. das mit CS gelieferte GDB Manual studieren

Ausserdem: "Debugging with DDD", hat auch gut 200 Seiten...

>
> Bei der Eclipse-Installation in dem Link von Markus sieht es ja so aus,
> als wenn das gdb-Frtontend von Eclipse nicht speziell für das
> ARM-Zielsystem kompiliert werden muss ?
>
Im Prinzip ist das genau derselbe Mechanismus wie beim DDD.
Die grafischen Frontends starten alle den passenden
gdb im Hintergrund und kommunizieren ihm.

> Gibt es irgendwo im Internet eine Anleitung zum Thema J-Link unter Linux
> mit freien Tools ?

Auch dazu gibt´s gute Literatur: "OpenOCD User’s Guide" (140 Seiten, 
muss
man aber nicht alle gelesen haben...).

Also: RTFMs.

HDH.

Jax
OP #2042254
Lesenswert?

Ich bin bis jetzt nur soweit gekommen, daß ich für die ersten Tests eine 
Demoversion von CrossWorks mit einem JTAGkey unter Debian benutzt habe.

Das ist aber auch schon wieder ein paar Tage her ..., hat aber sehr gut 
funktioniert.


@Sebastian:

Kannst Du mal beschreiben, wie Du das ganze eingerichtet hast ?
#2042306
Lesenswert?

Matthias K. schrieb:
> Kannst Du mal beschreiben, wie Du das ganze eingerichtet hast ?

So ganz genau weis ich es nicht mehr, ist schon eine Weile her.

//Einrichten von Eclipse
- Eclipse CDT herunterladen und entpacken
- GDB Hardware Debugging Feature von Eclipse installieren
- GNU Arm Plugin für Eclipse herunterladen und installieren
- Codesourcery für Linux herunterladen und installieren (unter Ubuntu 
geht es standartmäßig nicht, im Readme File ist aber beschrieben was man 
machen muss)
- PATH Variable anpassen (ansonsten funktioniert der Build Prozess 
nicht)

//Einrichten vom JLink
- Sicherstellen das die Libusb installiert ist
- von Segger die JLink Software für Linux herunterladen
- die start.sh so modifizieren dass der GDB Server anstatt der JLinkExe 
gestartet wird (den GDB Server starte ich über das Terminal)

//Einrichten des GDB Server
- In Eclipse den GDB Hardeware Server richtig konfigurieren

Das ist alles mit vorsicht zu genießen. Ich bin kein wirklicher Linux 
Gott und glaube einiges was ich da gemacht habe, ist deutlich einfacher 
zu lösen, aber hauptsache es funktioniert!

Hab noch ein Beweisbild drangehängt!

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