mikrocontroller.net

Forum: Compiler & IDEs Installation von AVR-GCC unter WinXP


Autor: Timo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie installiere ich AVR-GCC unter Windows XP?

Autor: BAB (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Bobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bin ein Anfänger. Wüßte auch gerne wie man das unter XP macht.
Was sind Umgebungsvariablen und wie macht man das überhaupt?

Vielen Dank

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
RTFM: F1 drücken -> "Umgebungsvariablen"

Autor: Bobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok Danke ich weiß jetzt wo man sie erstellt.
Aber was für ein Namen und welche Werte muss ich den für AVRGCC dort 
eingeben?????????ß
Danke

Autor: BAB (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
VARIABLE: AVR   WERT: C:/avrgcc
VARIABLE  CC    WERT: avr-gcc

das zum path hinzufügen C:\avrgcc\bin;%path%

Autor: Peter Fleury (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso nicht gleich die neue Version WinAVR installieren ?

Download unter: http://sourceforge.net/projects/winavr

Die Variablen AVR und CC werden nicht mehr gebraucht, nur in PATH 
variable müssen zwei Einträge hinzugefügt werden werden:

c:\winavr\bin;c:\winavr\utils\bin
(falls man Default Installations-Verzeichnis winavr verwendet)

Autor: Marco Vogt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mir jetzt auch WinAVR runtergeladen (die aktuelle Version). Aber 
obwohl ich jetzt schon mehrere "Howtos" gelesen habe, schaffe ich es 
einfach nicht mit AVRStudio 3.x ein C Programm zu kompilieren. Ich hab 
keine Ahnung wie der ganze Kram funktioniert und habe es so gemacht:
Ein Projekt erstellt im gcctest Verzeichnis und als Compiler nicht 
Assemlber sondern das andere ausegwählt. Dann eine .c Datei in Sources 
und die passende Makefile geladen. In Settings die gcc.bat eingetragen 
und auf Komilieren geklickt. Erst mal hat er die make.exe nicht 
gefunden. Also hab ich die Path Angaben (hab WinXP und die Angaben auch 
in den Systemvariablen) in die gcc.bat geschrieben. JEtzt lief make und 
spuckt mir wunerschöne Fehler aus:
"make (e=2): Das System konnte die Datei nicht finden
make.exe: ***[gcctest1.o]Error 2
Errors detected during link stage"

JEtzt weiß ich wirklich nicht mehr weiter, weil mir das ABSOLUT nichts 
sagt. Ich denke, dass wenigstens einer von euch GCC nutzt und hoffe dass 
einer das mal Schritt für Schritt in deutscher Spreche erklären kann. 
Vielleicht auch eine ICQ Session :). Es gibt bestimmt noch mehr Leute, 
die sich SEHR darüber freuen würden.

Autor: Peter Fleury (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Marco

Versuche zuerst einmal in einem Command-Fenster (cmd.exe)
zu kompilieren mittels Aufruf von make.
-> Falls es nicht geht, bitte Makefile und source posten!

Bitte beachten dass WINAVR\.. zuvorderst im PATH eingetragen ist, oder 
besser alte AVRfreaks Verzeichnis aus dem PATH entfernen.

Die Datei gcc.bat und gcc2.bat müssen nach \WINAVR\bin kopiert werden.

Autor: Marco Vogt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke!

Ich hab es mal in der Konsole versucht und diesen Fehler bekommen:

C:\WinAVR\utils\bin>make
avr-objcopy -O avrobj gcctest1.elf gcctest1.obj
avr-objcopy: gcctest1.obj: Invalid bfd target
make: *** [gcctest1.obj] Error 1

Path C:\WinAVR\bin und C:\WinAVR\utils\bin sind gesetzt.

Hier die Makefile:

# Simple Makefile
# Volker Oth (c) 1999

include $(AVR)/include/make1

########### change this lines according to your project 
##################

#put the name of the target mcu here (at90s8515, at90s8535, attiny22, 
atmega603 etc.)
  MCU = at90s2313

#put the name of the target file here (without extension)
  TRG  = gcctest1

#put your C sourcefiles here
  SRC  = $(TRG).c

#put additional assembler source file here
  ASRC =

#additional libraries and object files to link
  LIB  =

#additional includes to compile
  INC  =

#compiler flags
  CPFLAGS  = -g -O3 -Wall -Wstrict-prototypes -Wa,-ahlms=$(<:.c=.lst)

#linker flags
  LDFLAGS = -Wl,-Map=$(TRG).map,--cref

########### you should not need to change the following line 
#############
include $(AVR)/include/make2

###### dependecies, add any dependencies you need here 
###################

$(TRG).o : $(TRG).c

und hier der Source:

#include <io.h>

typedef unsigned char  u08;

int main( void )
{
   u08 led, i, j, k;

   outp(0xff,DDRB);            /* use all pins on PortB for output */

   led = 1;                    /* init variable representing the LED 
state */

   for (;;) {
       outp(~led, PORTB);      /* invert the output since a zero means: 
LED on */
       led <<= 1;              /* move to next LED */
       if (!led)               /* overflow: start with Port B0 again */
           led = 1;
       for (i=0; i<255; i++)   /* outer delay loop */
           for(j=0; j<255;j++) /* inner delay loop */
               k++;            /* just do something - could also be a 
NOP */
   }
}

P.S.: Nicht hauen wegen derm langen Post ;)

Autor: BAB (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi ich hab nur flüchtig drüber geschaut:

###### dependecies, add any dependencies you need here 
###################

$(TRG).o : $(TRG).c
gcctest1.o: gcctest.c  <-- du musst dem compiler sagen was er braucht


oben steht was von C:\WINAVR...
das makefile ist aber von der avrfreaks gcc version...das könnte so gar 
nicht funtionieren...was hast du denn jetzt installiert?

MfG

BAB

Autor: Peter Fleury (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das makefile und die make-include File der AVRfreaks distribution sind 
nicht kompatibel zum WinAVR.

Bitte schaue das Beispiel-Makefile im Verzeichnis
\WinAVR\sample an.

Vergiss die alten gcctest*.c Beispiele vom der AVRfreaks Distribution, 
diese sind nicht kompatibel zu WinAVR.

Schau lieber das Beispiel
WinAVR\doc\examples\demo\demo.c an.

Weitere Beispiele gibts auf meiner Homepage:
http://www.mysunrise.ch/users/pfleury/avr-software.html

Die Beispiele zeigen die neuen Möglichkeiten von WinAVR, im speziellen 
die neue Syntax für den Port Zugriff.

Autor: Marco Vogt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
JUHUUUUU!!! Es klappt :) Vielen vielen Dank!!!

ICh hab es auch aus AVRStudio mit der WinAVR Makefile versucht - ohne 
Erfolg. Aber jetzt in der Konsole klappt es!

Jetzt muss ich es nur noch hinbekommen, das AVRStudio auch kompilieren 
kann...

Autor: Peter Fleury (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kannst Du genauer beschreiben was beim kompilieren via AVRStudio nicht 
geht ?

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.