WinAVR problem

Gast #1836565
Lesenswert?

hallo ich brauche hilfe weil wenn ich dise datei in eine hex datei 
umwandeln will steht da immer das:
> "make.exe" all

-------- begin --------
avr-gcc (WinAVR 20100110) 4.3.3
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is 
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.


Linking: main.elf
avr-gcc -mmcu=attiny2313 -I. -gdwarf-2 -DF_CPU=8000000UL -Os 
-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall 
-Wstrict-prototypes -Wa,-adhlns=main.o  -std=gnu99 -MMD -MP -MF 
.dep/main.elf.d main.o --output main.elf -Wl,-Map=main.map,--cref 
-lm
main.o: In function `main':
C:\Dokumente und Einstellungen\Besitzer\Eigene Dateien\Downloads\Neuer 
Ordner/main.c:7: undefined reference to `lcd_init'
C:\Dokumente und Einstellungen\Besitzer\Eigene Dateien\Downloads\Neuer 
Ordner/main.c:9: undefined reference to `lcd_pos'
C:\Dokumente und Einstellungen\Besitzer\Eigene Dateien\Downloads\Neuer 
Ordner/main.c:10: undefined reference to `lcd_text'
C:\Dokumente und Einstellungen\Besitzer\Eigene Dateien\Downloads\Neuer 
Ordner/main.c:12: undefined reference to `lcd_pos'
C:\Dokumente und Einstellungen\Besitzer\Eigene Dateien\Downloads\Neuer 
Ordner/main.c:13: undefined reference to `lcd_text'
make.exe: *** [main.elf] Error 1

> Process Exit Code: 2
> Time Taken: 00:11
Angehängte Dateien:
#1836967
Lesenswert?

> avr-gcc -mmcu=attiny2313 -I. -gdwarf-2 -DF_CPU=8000000UL
> -Os -funsigned-char -funsigned-bitfields -fpack-struct
> -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=main.o
>  -std=gnu99 -MMD -MP -MF .dep/main.elf.d main.o
> --output main.elf -Wl,-Map=main.map,--cref -lm

Und die Antwort ist immer noch dieselbe:
Du musst schon alle *.c Dateien zu deinem Projekt hinzufügen!
Dein Projekt besteht aus main.c und lcd_drv.c
Beide Dateien müssen compiliert werden, dann bekommst du main.o und 
lcd_drv.o
Diese beiden werden dann zum endgültigen Program zusammengelinkt.

In deiner Linkeranweisung ist nur von main.o die Rede. Von lcd_drv.o 
steht da nichts. Dort sind aber die Implementierungen der Funktionen 
enthalten! Die gehört mit dazu, sonst kann man kein Programm bauen

http://www.mikrocontroller.net/articles/FAQ#Ich_hab_da_mehrere_.2A.c_und_.2A.h_Dateien._Was_mache_ich_damit.3F

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren