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

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.