Forum: Mikrocontroller und Digitale Elektronik AVRDUDE für Windows kompilieren - Anleitung !


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Martin e. C. (eduardo)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Nach dem ich mich auf die WINAVR-20100110 (wegen AVRDUDE mit PDI 
Unterstützung)  gefreut habe und danach feststellen müsste dass WINAVR 
ohne UBS Support kompiliert würde,  habe ich  dann das ARVDUDE in seine 
letzte Version für Windows „FAST“ überall gesucht aber leider nichts 
gefunden :-(.

Hier ist eine kleine Anleitung für „Windows User wie ich“ die nicht zu 
viel Ahnung  haben wie man so etwas für Windows kompilieren kann.

Vielleicht kann man so was gebrauchen!

Ein großes „DANKE SCHÖN“ an Jörg Wunsch für die nette Hilfe,
Muchas gracias!!

AVRDUDE wie viele FreeBSD Software sind als Quellcode überall zu finden, 
Dateien sehen etwa so aus:

--> Avrdude-5.10.tar.gz

Drin ist der ganze Quellcode die man dann kompiliert,  dafür braucht man 
noch etwa wie Cywin oder MinGW+Msys, ich habe es mit MinGW+Msys gemacht.

Also
1.  MinGW + Msys downloaden 
(http://www.mingw.org/wiki/HOWTO_Install_the_MinGW_GCC_Compiler_Suite), 
als erstes MinGW mit C-Compiler, flex, byacc  oder bison  installieren, 
am besten „current“ wählen dabei sind alle notwendige „Pakete“ 
erhalten, danach Msys installieren.

2.  Libusb-win32-scr-0.1.12.2.tar.gz downloaden und wie folgt mit MinGw 
kompilieren und in MinGW integrieren:

MinGW starten
… in Verzeichnis wechseln wo libusb steht z.B.
$ cd  e:
dann entpacken:
$ tar -xvzf libusb-win32-scr-0.1.12.2.tar.gz
$ cd libusb-win32-scr-0.1.12.2
$ make

3.  Danach folgende Dateien in MinGW kopieren:
Copy … \LibUSB-Win32-scr-0.1.12.2\src\src\usb.h  to C:\MinGW\include\
Copy …\LibUSB-Win32-scr-0.1.12.2\src\libusb.a to  C:\MinGW\lib\
Copy …\LibUSB-Win32-scr-0.1.12.2\src\libusb0.dll to C:\MinGW\bin\

4.  Jetzt kann man AVRDUDE “mit” USB Support kompilieren, also
AVRDUDE entpacken:
$ tar -xvzf avrdude-5.10.tar.gz
$ cd avrdude-5.10
$ ./configure
$ make

5.  Schließlich erschein im Verzeichnis  “avrdude-5.10” die Dateien 
avrdude.exe und avrdude.conf die man in WINAVR-20100110\bin kopiert!

6. sich freuen! AVRDUDE fünktioniert jetzt mit USB Support!

Gruß
Martin

: Gesperrt durch Moderator
von Stefan B. (stefan) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Schöne Anleitung! Werde ich ausprobieren.

von Harry S. (littlegonzo)


Bewertung
0 lesenswert
nicht lesenswert
Mal ne frage wäre es nicht auch möglich es den "Windows Nutzern" z.B. 
hier als compilierte Fassung zu hinterlegen?

von Martin e. C. (eduardo)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Harry
 da ist die letzte Version AVRDUDE für Windows bitte schön!

Edit: ich habe den Anhang mal gelöscht, siehe

Beitrag "Re: AVRDUDE für Windows kompilieren - Anleitung !"

für eine aktuelle Version.  -- Jörg

von Harry S. (littlegonzo)


Bewertung
0 lesenswert
nicht lesenswert
Hi,
ja vielen Dank so oder ähnlich meinte ich das. Es ist zwar auch mal nett 
zu wissen wie man es selbst kompiliert aber sich deswegen den "ganzen 
Krams" gleich auf den Rechner zu installieren wenn man es sonst nicht 
benötigt?

War weder böse noch negativ gemeint, doch ich denke viele freuen sich 
über die bereits "fertige" Version. Wobei ich sonst auch kein Freund von 
Geiz ist Geil und alles fertig bekommen bin..

Nochmals Danke
und viele Grüße
Harry

von MarkusB (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Wäre es nicht einfacher, einfach mal eine compilierte Version 
anzubieten? Dann muss sich nicht jeder die ganzen Tools installieren, um 
ein Programm compilieren zu können

von MarkusB (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hups, sorry. Hat ja Martin gemacht.

von Stefan W. (swessels)


Bewertung
0 lesenswert
nicht lesenswert
Moin
>da ist die letzte Version AVRDUDE für Windows bitte schön!
Danke, genau das habe ich gesucht.

Gruß,
Stefan

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
MarkusB schrieb:
> Wäre es nicht einfacher, einfach mal eine compilierte Version
> anzubieten?

Das ist dann die übliche Variante, wie "Entwicklungshilfe" so
funktioniert...

von Birger Z. (nohelp)


Bewertung
0 lesenswert
nicht lesenswert
Komisch, mit meinen AVR910 Adaptern, die mit dem Code von  Klaus 
Leidinger laufen, funktioniert nach wie vor nur eine ganz bestimmte 
ältere Version. Egal ob als AVR910 oder butterfly konfiguriert.

von Jens (Gast)


Bewertung
0 lesenswert
nicht lesenswert
@No Name

> Komisch, mit meinen AVR910 Adaptern, die mit dem Code von  Klaus
> Leidinger laufen, funktioniert nach wie vor nur eine ganz bestimmte
> ältere Version.

Welchen ARV versuchst Du programmieren? Ich habe bislang keine Probleme 
feststellen können...

LG Jens

von Birger Z. (nohelp)


Bewertung
0 lesenswert
nicht lesenswert
Normalerweise arbeite ich nur mit mega128 und das seit etlichen Jahren. 
Hab mich immer mal wieder mit einem Update von avrdude versucht. Aber 
nix scheint zu funktionieren. Möglicherweise bin ich wegen der 
Erweiterung von Klaus Leidinger da eingeengt. Andererseits soll sein 
Code doch AVR910 kompatibel sein. Ich versteh es nicht so ganz.

von Simon K. (simon) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Versuch doch mal AVRDUDE mehr zu entlocken, mit den passenden 
verbose-Parametern.

So kompliziert ist der AVR910 Programmier nicht. Habe schon selber einen 
für den ATxmega gebaut, der fast auf Anhieb lief.

von Jens (Gast)


Bewertung
0 lesenswert
nicht lesenswert
@No Name

> Normalerweise arbeite ich nur mit mega128 und das seit etlichen Jahren.

Leider habe ich keinen ATmega128 hier, daher kann ich es auch nicht 
testen. Ich würde hier folgende AVRdude Einstellung verwenden:

-p m128 -x devcode=0x43 -c avr910 -P COM1 -b 115200 -e -U 
flash:w:C:\Test.hex:a

Verwendest Du die gleichen Parameter? Wenn nicht, teste mal ob es so 
funktioniert...

LG Jens

von Birger Z. (nohelp)


Bewertung
0 lesenswert
nicht lesenswert
Oh, der -b Parameter wirkte Wunder. Danke für den Hinweis. Wobei, ich 
hab das doch auch schon mal alles durchexerziert. Muss ich morgen 
nochmal drüberschauen.

von Jens (Gast)


Bewertung
0 lesenswert
nicht lesenswert
@No Name

> Oh, der -b Parameter wirkte Wunder................

Wenn Du Windows verwendest, dann schau mal hier vorbei (so musst Du die 
Parameter nicht jedes mal wieder von Hand eingeben): 
http://www.pcfilter.de/AVR-Ecke/Page5.html

LG Jens

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
No Name schrieb:
> Möglicherweise bin ich wegen der
> Erweiterung von Klaus Leidinger da eingeengt.

Der aktuelle AVRDUDE-Code ist von Klaus vor einiger Zeit mal
gründlich überarbeitet worden, der sollte sowohl mit seiner
Firmware als auch mit allen anderen zum Laufen zu bekommen
sein.  Dabei sind auch zwei -x-Zusatzoptionen für AVR910 mit
aufgenommen worden (extended device options), kannst du im
Manual nachlesen.

von Birger Z. (nohelp)


Bewertung
0 lesenswert
nicht lesenswert
@Martin e. C.
du solltest deine exe einmal mit strip.exe entschlacken, dann bleibt nur 
ein Achtel der Größe über. Strip entfernt die Debuginformationen.

von Martin e. C. (eduardo)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Tja! man lern jeden Tag was!!

@No Name schrieb:
>> du solltest deine exe einmal mit strip.exe entschlacken
hatte keine Ahnung das sowas EXISTIERT!

>> dann bleibt nur ein Achtel der Größe über.
tatsächlich!

---------->>>>> "entschlackte" version Angehängt

von Birger Z. (nohelp)


Bewertung
0 lesenswert
nicht lesenswert
Die Sache mit der strip.exe erfuhr ich während meiner Diplomarbeit vor 5 
Jahren, als ich mir wegen dem damals relativ frischen AT90CAN128 den 
AvrGCC selber compiliert habe. Im 2005 verfügbaren WinAVR war ein Bug in 
der Registeradressierung des EEproms.

von Cool (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Tag

sehr schön!
genau was ich gesucht habe.
Danke

Gruß

von Knutt (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Sehr schön,
ist was ich brauchte, ein Mal vielen Dank!

von Martin e. C. (eduardo)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

AVRDUDE Version 5.11 für Windows

Gruß
Martin

von ... (Gast)


Bewertung
0 lesenswert
nicht lesenswert
> AVRDUDE Version 5.11 für Windows

vielen Dank, ich hab's nicht geschafft, das zu compilieren

von Bernhard (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hi!

Hat vielleicht wer lust Version 5.11.1 zu kompilieren und hier 
reinzustellen?
bei mir haut das nicht so wirklich hin.

thx

von Martin e. C. (eduardo)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Bitte schön.

Gruß

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Ich plane übrigens, die nächste Version dann AVRDUDE 6.0 zu nennen,
insofern ist dieses 5.11.1 eher ein "6.0 preview".

von Rolf H. (flash01)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,
ich sitze hier vor einem Laptop mit Vista (32Bit)und habe
avrdude 5.11 im Ordner "Programme" runter geladen.
In der Zip befanden sich 2 Dateien, die ich extrahiert habe.
Es erschienen im Ordner avrdude-5.11:

avrdude CONF-Datei mit 538 kB
avrdude Anwendung mit 372 KB

Klick ich die erste an...öffnet sich Adobe Reader mit der
Fehlermeldung wie Datei nicht erkannt!
Klick ich die zweite an, kommt ein Hinweis zum öffnen..
bestätigen...ich sehe kurz eine Seite aufblitzen und das wars.
Alle Icons auf dem Desktop sind verschoben.
Das gleiche habe ich auch mit avrdude-5.10 erlebt.

Was mach ich nur falsch? Mit win7 (64Bit) draue ich mich nicht ran.

Grüße

Rolf

von Joachim D. (Firma: JDCC) (scheppertreiber)


Bewertung
0 lesenswert
nicht lesenswert
Mein avrdude ist ein Kommandozeilenprogramm.

Beim Starten machst eine DOS-Box auf, avrdude starte und beendet
sich gleich wieder. Die DOS-Box wird geschlossen.

Abhilfe: DOS-Box aufmachen und dann avrdude eintippen.

Bei meinem WinAVR war das nebenbei dabei, ohne kompilieren kopfkratz

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Joachim Drechsel schrieb:
> Bei meinem WinAVR war das nebenbei dabei

Aber kein AVRDUDE-5.11. ;-)

von Rolf H. (flash01)


Bewertung
0 lesenswert
nicht lesenswert
oh weia
wie mache ich denn nur eine Dos Box auf!

von ...-. (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Es gibt GUIs für AVRDUDE, siehe 
http://www.mikrocontroller.net/articles/AVRDUDE

von Joachim D. (Firma: JDCC) (scheppertreiber)


Bewertung
0 lesenswert
nicht lesenswert
Jörg Wunsch schrieb:
> Aber kein AVRDUDE-5.11. ;-)

Ich habe 5.10. Was kann 5.11 mehr/besser ?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Rolf Hegewald schrieb:
> oh weia
> wie mache ich denn nur eine Dos Box auf!

oh weia :)  Es gab ein Computerzeitalter vor der Klick-Zeit. ;-)

Irgendwo kannst du doch eingeben, dass du ein beliebiges Programm
per Namen ausführst.  (Start->Ausführen oder so, ich kenne mich mit
Windows nicht wirklich aus.)  Da tippst du als Kommandonamen "cmd"
ein.

Normalerweise packt man das aber irgendwo ins Makefile oder
dergleichen mit rein, je nachdem, was du zum Compilieren benutzt.
Da du cmd.exe ja noch nicht kennst, können wir ausschließen, dass
du den Compiler von der Kommandozeile aus aufrufst ...

Joachim Drechsel schrieb:
> Ich habe 5.10. Was kann 5.11 mehr/besser ?

https://savannah.nongnu.org/forum/forum.php?forum_id=6916

(Bitte 5.11.1 benutzen.)

von Joachim D. (Firma: JDCC) (scheppertreiber)


Bewertung
0 lesenswert
nicht lesenswert
Danke !

von Helmut (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Wer auch immer diesen "MinGW Installation Manager" gebastelt hat.. er 
solls lassen, total beklopptes GUI, man muss JEDEN Eintrag von dem 
Scheiß einzeln "markieren"...nein, ein "select all" ist ja zuviel 
verlangt. MANN!!

von Helmut (Gast)


Bewertung
0 lesenswert
nicht lesenswert
So, Suite installiert, bin in der MSYS-Console, dann

./configure

Ergebnis:
Configuration summary:
----------------------
DON'T HAVE libelf
DON'T HAVE libusb
DON'T HAVE libusb_1_0
DON'T HAVE libftdi1
DON'T HAVE libftdi
DO HAVE    libhid
DON'T HAVE pthread
DISABLED   doc
ENABLED    parport
DISABLED   linuxgpio

..und Fehler/Abbruch da libusb/ftdi-zeugs angeblich nicht da.
Warum meint er ibusb wäre nicht da?

Aus dem Archiv "libusb-win32-bin-1.2.6.0" habe ich die geforderten 
Dateien kopiert:

- ich habe "lusb0_usb.h" nach MinGW/include/ kopiert und auch eine 
zweite, umbenannte Version "usb.h"
- ich habe "libusb0_x86.dll" nach MinGW/bin/ kopiert und auch eine 
umbenannte Version "libusb0.dll"
- ich habe "libusb.a" nach MinGW/lib/ kopiert

Warum ledet er trotzdem "DON'T HAVE" und wie kann ich packages zum MinGW 
hinzufgen und woher bekommt man die?

besten Dank
Helmut

von Martin e. C. (eduardo)


Bewertung
0 lesenswert
nicht lesenswert
Unter Windows oder?

von Martin e. C. (eduardo)


Bewertung
0 lesenswert
nicht lesenswert
Helmut schrieb:
> Warum ledet er trotzdem "DON'T HAVE" und wie kann ich packages zum MinGW
> hinzufgen und woher bekommt man die?

Unter Windows habe ich es nicht gehabt, ich hab zu letzt unter linux 
probiert und kam das gleiche Meldung raus, hab dann libusb installiert 
(aber unter linux) und war dann alles ok.
Du kannst versuchen die libusb zu installieren und danach noch mal 
probieren.
http://sourceforge.net/projects/libusb/files/libusb-1.0/

von Martin e. C. (eduardo)


Bewertung
0 lesenswert
nicht lesenswert
Oder du kannst die kompilierte Version für Windows von Jörg Wünsch 
gleich runterladen:
http://download.savannah.gnu.org/releases/avrdude/?C=M;O=D

(avrdude-6.1-mingw32.zip)

von Niclas W. (Firma: XxX) (technikfreaky)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,
mein Problem ist dass beim Starten der .exe der Fehler "Die Anwendung 
konnte nicht gestartet werden, weil libusb0.dll nicht gefunden wurde. 
Neuinstallation......." auftritt.
Was mache isch falsch?
Danke im Vorraus.

MfG Niclas

von Niclas W. (Firma: XxX) (technikfreaky)


Bewertung
0 lesenswert
nicht lesenswert
Ok alles gut Problem gelöst

Beitrag #6089428 wurde von einem Moderator gelöscht.
Beitrag #6089433 wurde von einem Moderator gelöscht.
Beitrag #6089446 wurde von einem Moderator gelöscht.
Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.