Forum: Compiler & IDEs GCC: wie kompiliere ich ETH_M32EX von Ulrich Radig richtig?


von Christian S. (roehrenvorheizer)


Angehängte Dateien:

Lesenswert?

Hallo,

ich möchte mit AVR-Studio 4.18 und winavr 20100110 das Webserver-Projekt 
von Ulrich Radig compilieren können, um eigene Anpassungen vorzunehmen.

http://www.ulrichradig.de/home/uploads/File/ETH_M32_EX/ETH_M32_EX_SOFT.zip

Hierfür habe ich erst mal ein Projekt zusammen gestellt und bin in drei 
Varianten gescheitet, fehlerfrei zu kompilieren.

1. AVR-Studio übernimmt die Einstellungen für ATMega32.
2. AVR-Studio benutzt das im ZIP-Archiv enthaltete Makefile. Ein 
hex-file wird vermißt.
3. AVR-Studio benutzt das im ZIP-Archiv enthaltete Makefile. Die 
hex-files sind im Unterverzeichnis dabei.


Da ich nicht schlau werde aus den Fehlermeldungen (siehe Anhang), wäre 
ich froh, wenn mir da jemand mit Tipps weiter helfen könnte.

mfG

von Oliver (Gast)


Lesenswert?

Christian S. schrieb:
> um eigene Anpassungen vorzunehmen.

Sie mir nicht böse, aber übernimmst du dich damit nicht etwas?

Versuch mal, die makefile-Versionen ganz ohne AVR-Studio zu compilieren, 
auch mal in einem anderen Verzeichnis, das keine Leerzeichen im 
Pfadnamen enhält.

Oliver

von Christian S. (roehrenvorheizer)


Angehängte Dateien:

Lesenswert?

Hallo,

wie du vorgeschlagen hast, habe ich Make ausgeführt in einem 
Verzeichnis, das Nahe der Wurzel und keinerlei Leerzeichen oder sonstwas 
in den Dateinamen enthält. "Dokumente und Einstellungen" enthält 
Leerzeichen. Die Voreinstellung im Makefile war für den Mega644.


Ergebnis siehe beigefügte Datei. So geht es! Dann liegt es am Pfad.
Und dabei ist auch die epp-Datei, die im Zip-Archiv aus dem Download 
gefehlt hat.


Also vielen Dank für die Hilfe. Wenn sonst mit AVR-Studio alles gut 
klappt, vergißt man die Grundlagen. Meine ersten Versuche mit C 
verwendeten immer direkt "make".

Was die Anpassungen angeht, wollte ich nur (config.h) die Portpins für 
das LCD, den Takt und welchen Modus (4 oder 8 Bit) für das LCD verwendet 
wird, und evtl eine Mailadresse einstellen können. Ich wachse immer 
gerne über meine Grenzen hinaus:-)


mit freundlichem Gruß

von Karl H. (kbuchegg)


Lesenswert?

Christian S. schrieb:


> Ergebnis siehe beigefügte Datei. So geht es! Dann liegt es am Pfad.

Nö.
Es liegt daran, dass in deiner AVR-Studio Version mit make-Verwaltung 
eine ganze Menge Files fehlen.

vergleich doch einfach mal. In deinem letzten Log sind einige C-Dateien 
dabei, die im Subpfad Network liegen. Die vermisse ich in deiner 
AVR-Studio Version. Auch alles aus dem Camera Subpfad ist da nicht 
drinn.

Du brauchst dir nur ansehen, welche Files hier alle zur vollständigen 
Version gelinkt werden
1
Linking: Hexfiles/Webserver_MEGA644.elf
2
avr-gcc -mmcu=atmega644 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-s
3
truct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=main.o  -std=gnu99 mai
4
n.o usart.o stack.o timer.o cmd.o base64.o networkcard/enc28j60.o networkcard/rt
5
l8019.o httpd.o telnetd.o ntp.o lcd.o udp_lcd.o wol.o http_get.o analog.o sendma
6
il.o camera/cam.o camera/servo.o dnsc.o dhcpc.o artnet.o   --output Hexfiles/Web
7
server_MEGA644.elf -Wl,-Map=Hexfiles/Webserver_MEGA644.map,--cref -lm

für jede *.o Datei gibt es auch eine *.c Datei. Und die muss im 
AVR-Studio selbstversändlich in die Projektverwaltung mit aufgenommen 
werden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.