MSPGCC

Gast #39538
Hallo

Habe das Komplettpaket MSPGCC runtergeladen. Nun weis ich nicht mehr so 
recht weiter. Ich möchte C-Programme downloaden. Ich habe bisher immer 
mit dem IAR Compiler und C-Spy gearbeitet.

Das Komplettpaket habe ich bereits installiert. Was für Schritte folgen 
jetzt? Mit der Anleitung hier kann ich nichts anfangen. Ich weis nicht 
wo ich z.B. die Befehle
"msp430-gcc test1.c -mmcu=msp430x1121 -o test1.elf" eingeben soll.

Danke für eure Hilfe

Steffen
Gast
Ihr müßt entschuldigen aber ich bin Anfänger.

Wo finde ich diese aka Eigabeaufforderung?

Wie kann ich eine .c Datei in ein .elf Datei umwandeln ?

Danke für die Hilfe

Gruß Steffen
Gast
Im Kommandoprozessor.  Unter Windows ist das command.com oder
cmd.exe (je nach Windows), oft fälschlicherweise auch als
,,DOS-Kommandoaufforderung'' bezeichnet.  (Unter Windows NT und
darüber hat das Ding mit MS-DOS überhaupt nichts mehr gemein.)

Eine C-Datei wandelst Du durch Compilieren und Linken in eine
ELF-Datei um, also exakt durch Ausführung dieser Kommandos.
Normalerweise läßt man ein »make« die eigentlichen Compiler-
und Linkerkommandos ausführen.
Gast
Hallo Joerg,
würde das mit
make msp430-gcc test1.c -mmcu=msp430x1121 -o test1.elf

in einer *.bat funzen ? - Ich hab mal eine angehängt-

Gruß Bernhard
(leider auch zu doof für LINUX)
Angehängte Dateien:
Gast
Nein.  Wenn Du diese ausführliche Form nehmen willst, dann
laß einfach das »make« weg.  Der Rest ist der Aufruf des
Compilers (einschließlich Linker), setzt übrigens voraus, daß
der irgendwo entlang des Suchpfades (%PATH%) gefunden werden
kann.

Für richtige Projekte wirst Du da übrigens noch ein -O einbauen
wollen, damit der Compiler auch optimiert.

Die Alternative ist halt, daß man die Kommandozeile stattdessen
in einem Makefile hinterlegt und dann nur noch »make« sagt (oder
»make all«).  Auch kein .bat, da die Steuerung durch das
Makefile erfolgt mit dem vorrangigen Zweck, die auszuführenden
Kommandos zu vereinfachen -- Batch-Files verfolgen denselben
Zweck, aber auf anderem Wege.  Ein Batch führt immer alles aus,
was da drin steht, während make nur die Kommandos ausführt, die
notwendig sind, um das Ziel zu erreichen.  make arbeitet dabei
mit einem Abhängigkeitsgraphen auf der Basis der Zeitstempel
der durch die einzelnen Schritte generierten Dateien.  In
Deinem Falle hat dieser Graph nur zwei Knoten (die Dateien
test1.c und test1.elf) und eine Verbindung (den Aufruf von
msp430-gcc).  Dennoch gibt es schon einen Unterschied zwischen
einem Batch und einem make: wenn Du den Batch aufrufst, wird
er jedesmal ausgeführt.  Wenn Du make aufrufst, wird das
Kommando beim ersten Mal ausgeführt, beim erneuten Aufruf
nicht mehr.  make stellt dann fest, daß test1.elf (das Ziel)
bereits jünger als test1.c (die Quelle) ist und weiß daher,
daß es nichts mehr zu tun gibt.

Ich hoffe, daß ich mich einigermaßen verständlich ausdrücken
konnte...  Ein typisches Makefile dafür würde ungefähr so
aussehen:

CC=msp430-gcc
CFLAGS=-mmcu=msp430x1121
# oder:
#CFLAGS=-mmcu=msp430x1121 -O

all: test1.elf

test1.elf: test1.c
<tab>$(CC) $(CFLAGS) -o test1.elf test1.c

(Da, wo ich <tab> geschrieben habe, muß ein Tabulator stehen,
keine Leerzeichen.)
Gast
Hallo ich bins nochmals

wenn ich folgendes Komando in command.com eingebe:

msp430-gcc test1.c -mmcu=msp430x1121 -o test1.elf

kommt die Meldung:

MSP43~15: test1.c: No such file or directory
MSP43~15: no input files

Findet der Compiler die test.c Datei nicht?

Wo muß ich test.c ablegen damit der Compiler sie findet und in test.elf 
umwandelt.

Danke

Gruß Steffen
Gast
Hallo

Danke nochmals für eure Hilfe ich komme mit kleinen Schritten vorran. 
Ich habe jetzt das Programm test1.c im Verzeichnis

C:\msp430\mspgcc

wenn ich jetzt folgenden Aufruf mache:

C:\msp430\mspgcc>msp430-gcc test1.c -mmcu=msp430x1121 -o test1.elf

bekomme ich nun folgende Meldung.

cc1: internal error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html>; for instructions.

Und die .elf Datei ist immer entstanden.

Was mache ich nur falsch?


Gruß Steffen
Gast
Wohin muß ich das diese ältere Version installieren? ins Verzeichnis 
MSP430 oder?

Soll ich danach nochmals den Aufruf

msp430-gcc test1.c -mmcu=msp430x1121 -o test1.elf

in Command.com eingeben?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 23 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.