Tools, die zur Programmierung benötigt werden: Unterschied zwischen den Versionen

Aus C und Assembler mit Raspberry
KKeine Bearbeitungszusammenfassung
Zeile 12: Zeile 12:
Der GNU Linker ld wird verwendet, um Object-Files zu einem ausführbaren Programm zu verknüpfen.
Der GNU Linker ld wird verwendet, um Object-Files zu einem ausführbaren Programm zu verknüpfen.


Installation: sudo apt-get install binutils (häufig zusammen mit as installiert)
Verwendung:
Verwendung:
ld -o output output.o
ld -o output output.o
Compiler (gcc)
 
Mehr Informationen erhältst du unter [[Ld (Linker)]]
 
== Compiler (gcc) ==
Der GNU Compiler Collection gcc kann auch verwendet werden, um C und Assembler-Code zu mischen und zu kompilieren.
Der GNU Compiler Collection gcc kann auch verwendet werden, um C und Assembler-Code zu mischen und zu kompilieren.


Installation: sudo apt-get install gcc
Verwendung:
Verwendung:
gcc -o output input.c input.s
gcc -o output input.c input.s
Verwendung von Debugging-Tools wie gdb
 
Mehr informationen erhälts du unter [[GNU C Compiler]]
 
== Debugging-Tool (gdb) ==
Der GNU Debugger gdb ist ein leistungsfähiges Tool zur Fehlersuche in Programmen.
Der GNU Debugger gdb ist ein leistungsfähiges Tool zur Fehlersuche in Programmen.
Installation: sudo apt-get install gdb


Verwendung:
Verwendung:


gdb ./output
gdb ./output
Nützliche GDB-Befehle:
Nützliche GDB-Befehle:


break main: Setzt einen Haltepunkt in der main-Funktion.
: break main: Setzt einen Haltepunkt in der main-Funktion.
run: Startet das Programm.
: run: Startet das Programm.
step: Führt den nächsten Befehl aus.
: step: Führt den nächsten Befehl aus.
print <variable>: Zeigt den Wert einer Variable an.
: print <variable>: Zeigt den Wert einer Variable an.
continue: Läuft bis zum nächsten Haltepunkt weiter.
: continue: Läuft bis zum nächsten Haltepunkt weiter.
IDEs und Texteditoren, die Assembler unterstützen
 
Weitere Informationen erhälts du unter [[GNU Debugger]]
 
== IDEs und Texteditoren, die Assembler unterstützen ==
Mehrere IDEs und Texteditoren sind gut für die Arbeit mit Assembler-Code geeignet:
Mehrere IDEs und Texteditoren sind gut für die Arbeit mit Assembler-Code geeignet:


Zeile 60: Zeile 66:
emacs input.s
emacs input.s
Ich hoffe, diese Übersicht hilft dir dabei, eine umfassende Anleitung zu erstellen. Falls du spezifische Beispiele oder weitere Details benötigst, lass es mich wissen!
Ich hoffe, diese Übersicht hilft dir dabei, eine umfassende Anleitung zu erstellen. Falls du spezifische Beispiele oder weitere Details benötigst, lass es mich wissen!


== Tools ==
== Tools ==

Version vom 19. November 2024, 13:53 Uhr

Allgemeine Einführung in gängige Tools: Assembler (as), Linker (ld), Compiler (gcc) und Make

Assembler (as)

Der GNU Assembler as wird verwendet, um Assembler-Code in Maschinen-Code zu übersetzen.

Verwendung: as -o output.o input.s

Für mehr Informationen zum Assembler findest du unter GNU Assembler

Linker (ld)

Der GNU Linker ld wird verwendet, um Object-Files zu einem ausführbaren Programm zu verknüpfen.

Verwendung: ld -o output output.o

Mehr Informationen erhältst du unter Ld (Linker)

Compiler (gcc)

Der GNU Compiler Collection gcc kann auch verwendet werden, um C und Assembler-Code zu mischen und zu kompilieren.

Verwendung: gcc -o output input.c input.s

Mehr informationen erhälts du unter GNU C Compiler

Debugging-Tool (gdb)

Der GNU Debugger gdb ist ein leistungsfähiges Tool zur Fehlersuche in Programmen.

Verwendung:

gdb ./output

Nützliche GDB-Befehle:

break main: Setzt einen Haltepunkt in der main-Funktion.
run: Startet das Programm.
step: Führt den nächsten Befehl aus.
print <variable>: Zeigt den Wert einer Variable an.
continue: Läuft bis zum nächsten Haltepunkt weiter.

Weitere Informationen erhälts du unter GNU Debugger

IDEs und Texteditoren, die Assembler unterstützen

Mehrere IDEs und Texteditoren sind gut für die Arbeit mit Assembler-Code geeignet:

IDEs: Visual Studio Code: Mit Erweiterungen wie „C/C++“ und „Arm Assembly“ für Syntax-Highlighting und Debugging-Unterstützung. Installation: sudo apt install code Eclipse: Auch geeignet für Assembler-Entwicklung und Debugging. Installation: sudo apt install eclipse Texteditoren: Vim: Leistungsfähiger Texteditor mit Syntax-Highlighting für Assembler.

Installation: sudo apt install vim Verwendung: vim input.s Emacs: Ein Klassiker unter den Texteditoren, der ebenfalls gut für Assembler geeignet ist.

Installation: sudo apt install emacs Verwendung: emacs input.s Ich hoffe, diese Übersicht hilft dir dabei, eine umfassende Anleitung zu erstellen. Falls du spezifische Beispiele oder weitere Details benötigst, lass es mich wissen!

Tools

  • GNU MAKE

-> make -B: erstellt neue Kompilierungen

  • GDB
break (b) line Set breakpoint at line
run (r) Run the program
step (s) Single step program
continue (c) Continue running the program
quit (q or control-d) Exit gdb
control-c Interrupt the running program
info registers (i r) Print out the registers
info break Print out the breakpoints
delete n Delete breakpoint n
x /Nuf expression Show contents of memory
  • Gross-Compiling
  • Emulation