mikrocontroller.net

Forum: Compiler & IDEs cfile per commandline kompilieren


Autor: joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
seas

ist es möglich ein erstelltes c file... z.b. mit dem editor einfach per 
commandline in ein intel hex file zu kompilieren?

den controller könnte man ja über die st500.exe programmieren, nun würd 
ich noch das compilieren per cmdline benötigen.


mfg

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist nicht nur möglich, das ist sogar der normale Weg, so etwas zu 
tun. Näheres ist der Dokumentation des hier praktischerweise nicht 
benannten Compilers für den hier praktischerweise nicht genannten 
Controller zu entnehmen.

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Probiers mal mit

make

Oliver
P.S. Anleitungen zum Erstellen des makefiles gibts im Netz.

Autor: joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
der controller ist der avr atmega32, und naja compiler ist der 
avr-gcc...

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mach eine Commandline auf.

dann rufst du mal den Compiler auf.
Da bei mir der WinAVR auf C:\WinAVR-20090313 installiert ist und ich die 
dortigen Pfade nicht in meiner Path-Variablen habe, muss ich auf das 
Verzeichnis hinnavigieren um den Compiler aufzurufen. Man kann natürlich 
auch den entsprechenden Eintrag in die PATH Variable machen oder beim 
Aufruf den Pfad direkt angeben.

Und dann machst du einfach mal in der Command Line

cd \
cd WinAVR-20090313
cd bin
avr-gcc --help
avr-gcc --help=target

die ersten 3 Commandline anweisungen navigieren auf das bin Verzeichnis 
der WinAvr Installation. Dort ist das Compiler EXE.
Die letzten beiden rufen den Compiler mit dem --help Switch (bzw. die 
targetspezifische Hilfe) auf, welcher dir alle möglichen Optionen für 
den Compiler ausgibt.

Und da suchst du dir jetzt zusammen, was du brauchst. Der Blick in ein 
vorhandenes Makefile kann hier Wunder wirken um einen Satz brauchbarer 
Compiler Optionen zustande zu bringen.

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Compiler alleine erzeugt aber keine hex-files.

Es nutzt nichts, der Weg geht über make. Passende makefiles lassen sich 
mit MFile erzeugen, und wie das sonst so geht, steht oben links im 
Tutorial.

Oliver

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oliver schrieb:
> Der Compiler alleine erzeugt aber keine hex-files.
>
> Es nutzt nichts, der Weg geht über make.

make aber auch nicht :-)


Allerdings:
Das ist dir klar, das ist mir klar
nur Joe (Gast) ist das nicht klar.

Es spricht sich nun mal leicht 'Ich will'
Nur wenn man verstehen will, was da eigentlich passiert, dann muss man 
sich auch mal die Hände schmutzig machen und sich nicht alles auf einem 
Silbertablett präsentieren lassen.

Autor: joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja aber was für schritte wären notwendig um aus einem c file ein hex 
file zu bekommen.?

Autor: Lukas K. (carrotindustries)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
joe schrieb:
> ja aber was für schritte wären notwendig um aus einem c file ein hex
> file zu bekommen.?
Früher hieß das mal Datei...
Beispiel Makefile such dir eine aus und ändere die Parameter (MCU 
etc.) deiner Umgebung entsprechend.

Autor: joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
naja so kompliziert ist das ja doch nicht und man muss sich nicht 
wirklich "die hände schmutzig machen"....-.-

wie auch immer, ich hab einfach bei avr studio die buildmessages 
kopiert, da dort genau der kommandozeilen aufruf steht, und es 
funktioniert ohne probleme...

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Luk4s K. schrieb:
>> ja aber was für schritte wären notwendig um aus einem c file ein hex
>> file zu bekommen.?
> Früher hieß das mal Datei...

Und heute heißt es "Dokument", das man in einer Hierarchie aus "Ordnern" 
und "Unterordnern" findet. Da stelle ich mir immer einen riesigen 
Aktenordner vor, der ein ganzes Zimmer füllt, damit darin Platz ist für 
kleinere Ordner, in denen wieder kleinere Ordner sind, u.s.w

joe schrieb:
> ja aber was für schritte wären notwendig um aus einem c file ein hex
> file zu bekommen.?

Sorry, aber das ist etwas, das schon so oft im Detail erkärt wurde, daß 
es wirklich nicht sinnvoll ist, das hier nochmal zu tun. Es gibt da 
Massen von Tutorials, von denen man halt mal eins lesen müßte.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.