Forum: Mikrocontroller und Digitale Elektronik Makefile - Probleme


von Felix (Gast)


Angehängte Dateien:

Lesenswert?

Hej

Ich beschäftige mich die letzte Zeit mit dem Projekt eines MP3 Players 
von der Homepage

http://alpmp3.sourceforge.net/main.php?id=mobile2

Als ich den Code runtergeladen hatte und ihn im AVR Studio alle C und 
Header files eingebunden hatte, hat mit den Standardeinstellunge in 
"Cofiguration Options" (also nix mauell verändert ausser ner CPU 
Frequnez angegeben) die Kompilierung nicht geklappt. Build Window sagt:



Build started 29.11.2006 at 22:22:58
avr-gcc.exe  -mmcu=atmega32 -Wall -gdwarf-2       -DF_CPU=8000000UL -O0 
-fsigned-char -MD -MP -MT alp_mp3.o -MF dep/alp_mp3.o.d  -c 
../final_alp_mp3_V1/alp_mp3.c
avr-gcc.exe  -mmcu=atmega32 -Wall -gdwarf-2       -DF_CPU=8000000UL -O0 
-fsigned-char -MD -MP -MT buttons.o -MF dep/buttons.o.d  -c 
../final_alp_mp3_V1/buttons.c
avr-gcc.exe  -mmcu=atmega32 -Wall -gdwarf-2       -DF_CPU=8000000UL -O0 
-fsigned-char -MD -MP -MT comm_serial.o -MF dep/comm_serial.o.d  -c 
../final_alp_mp3_V1/comm_serial.c
avr-gcc.exe  -mmcu=atmega32 -Wall -gdwarf-2       -DF_CPU=8000000UL -O0 
-fsigned-char -MD -MP -MT config.o -MF dep/config.o.d  -c 
../final_alp_mp3_V1/config.c
avr-gcc.exe  -mmcu=atmega32 -Wall -gdwarf-2       -DF_CPU=8000000UL -O0 
-fsigned-char -MD -MP -MT delay.o -MF dep/delay.o.d  -c 
../final_alp_mp3_V1/delay.c
avr-gcc.exe  -mmcu=atmega32 -Wall -gdwarf-2       -DF_CPU=8000000UL -O0 
-fsigned-char -MD -MP -MT fat.o -MF dep/fat.o.d  -c 
../final_alp_mp3_V1/fat.c
../final_alp_mp3_V1/fat.c:90: warning: conflicting types for built-in 
function 'strcpy'
../final_alp_mp3_V1/fat.c:99: warning: conflicting types for built-in 
function 'memcpy'
avr-gcc.exe  -mmcu=atmega32 -Wall -gdwarf-2       -DF_CPU=8000000UL -O0 
-fsigned-char -MD -MP -MT fileio.o -MF dep/fileio.o.d  -c 
../final_alp_mp3_V1/fileio.c
../final_alp_mp3_V1/fileio.c: In function `fopen':
../final_alp_mp3_V1/fileio.c:29: warning: implicit declaration of 
function `FAT_dir_ctl'
../final_alp_mp3_V1/fileio.c:31: warning: implicit declaration of 
function `memcpy'
../final_alp_mp3_V1/fileio.c: In function `fplay_sector':
../final_alp_mp3_V1/fileio.c:70: error: `fat_u32' undeclared (first use 
in this function)
../final_alp_mp3_V1/fileio.c:70: error: (Each undeclared identifier is 
reported only once
../final_alp_mp3_V1/fileio.c:70: error: for each function it appears 
in.)
../final_alp_mp3_V1/fileio.c:83: error: `sec_per_clus' undeclared (first 
use in this function)
../final_alp_mp3_V1/fileio.c:84: error: `first_data_sectorl' undeclared 
(first use in this function)
../final_alp_mp3_V1/fileio.c:85: error: `fat_u16' undeclared (first use 
in this function)
../final_alp_mp3_V1/fileio.c:92: error: `fat_u08' undeclared (first use 
in this function)
make: *** [fileio.o] Error 1
Build failed with 7 errors and 4 warnings...




Also habe ich mal das mitgelieferte (und angehängten) makefile 
ausprobiert (als externes MAkefiel in den "Cofiguration Options" 
angegeben). Dann hat das - seltsamer Weise - auf einaml mit der 
Compilierung geklappt.

Das versteh ich schonmal nicht, weil ja der C code der gleiche ist wie 
vorher.

Aber abgesehen davon wird das .elf file mit dem (angehängten) makefile 
nicht erzeugt. Irgendwie logisch, weil's ja nicht drin steht. Trauriger 
Weise sehe ich nicht sehr viele Parallelen zwischen dem makeflile was 
das AVR Studio erzeugt und dem, das angehängt ist. Kann mir deshalb 
nicht zusammenreimen, wie die tausend einstellungen vorgenommen werden 
müssen. Deshalb endlich meine zweite Frage:

Kann mir jemand sagen, wie ich dem angehängten makefile verklickere, 
dass es noch die vom AVR Studio verlangte .elf Datei erzeugen soll??

Damit wäre mir sehr geholfen. Vielen Dank schonmal

Viele Grüsse
Felix

PS: Ein gutes Tutorial über makefiles würde mich auch mal 
interessieren...

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.