Tools, die zur Programmierung benötigt werden: Unterschied zwischen den Versionen
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. | ||
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. | ||
Verwendung: | Verwendung: | ||
gcc -o output input.c input.s | 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. | Der GNU Debugger gdb ist ein leistungsfähiges Tool zur Fehlersuche in Programmen. | ||
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