-
problem beim maken
hi ich hab ejetzt zum geburtstag den rp6 bekommen und habe auch winavr installiert jetzt hab ich aber bei den ersten make versuchen ein problem
kann mir jemand helfen.
Danke
> "make"
-------- begin --------
avr-gcc (WinAVR 20090313) 4.3.2
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.
Compiling: RP6Base_LEDs.c
avr-gcc -c -mmcu=atmega32 -I. -gdwarf-2 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=RP6Base_LEDs.lst -I../../RP6Lib -I../../RP6Lib/RP6base -I../../RP6Lib/RP6common -std=gnu99 -MD -MP -MF .dep/RP6Base_LEDs.o.d RP6Base_LEDs.c -o RP6Base_LEDs.o
../../RP6Lib/RP6base/RP6RobotBaseLib.h:196: warning: inline function 'isMovementComplete' declared but never defined
../../RP6Lib/RP6base/RP6RobotBaseLib.h:75: warning: inline function 'setLEDs' declared but never defined
../../RP6Lib/RP6base/RP6RobotBaseLib.h:196: warning: inline function 'isMovementComplete' declared but never defined
../../RP6Lib/RP6base/RP6RobotBaseLib.h:75: warning: inline function 'setLEDs' declared but never defined
Linking: RP6Base_LEDs.elf
avr-gcc -mmcu=atmega32 -I. -gdwarf-2 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=RP6Base_LEDs.o -I../../RP6Lib -I../../RP6Lib/RP6base -I../../RP6Lib/RP6common -std=gnu99 -MD -MP -MF .dep/RP6Base_LEDs.elf.d RP6Base_LEDs.o ../../RP6Lib/RP6base/RP6RobotBaseLib.o ../../RP6Lib/RP6common/RP6uart.o --output RP6Base_LEDs.elf -Wl,-Map=RP6Base_LEDs.map,--cref -lm
RP6Base_LEDs.o: In function `main':
c:\users\martinius\desktop\rp6examples\rp6base_exa mples\Example_01_LEDs/RP6Base_LEDs.c:64: undefined reference to `setLEDs'
c:\users\martinius\desktop\rp6examples\rp6base_exa mples\Example_01_LEDs/RP6Base_LEDs.c:77: undefined reference to `setLEDs'
c:\users\martinius\desktop\rp6examples\rp6base_exa mples\Example_01_LEDs/RP6Base_LEDs.c:94: undefined reference to `setLEDs'
make: *** [RP6Base_LEDs.elf] Error 1
> Process Exit Code: 2
> Time Taken: 00:01 [/code]
-
Du hast entweder die Files nicht im gleichen Verzeichnis oder nicht im makefile eingetragen.
-
nein es lag nicht am verzeichnis ich ahbe aber schon eine lösung gefunden ich habe mir die neuste vesion der libery von arexx runtergeladen und jetzt
klapt es
aber danke
-
ich hätte noch ne frage ich wolte ein programm schreiben und hab
einfach ein neues c element geöffnet und was geschrieben und wolte es
dann maken ging aber dann leider nicht .gibts dafür ne lösung?
Danke
-
Der Name des *.c file im makefile eingetragen?
-
aha ich ahbe halt einfach die datei a1.c genommen und sie mit dem winavr
tool [Winavr]Make All gemaked muss ich das noch irgendwo eintragen ?
-
In das makefile musst du das a1 eintragen.
Bei meinen alten makefiles sieht das so aus
Code:
# MCU name
MCU = atmega8
# Output format. (can be srec, ihex, binary)
FORMAT = ihex
# Target file name (without extension).
TARGET = a1
Ich arbeite allerdings jetzt mit dem AVR-Studio, da brauche ich kein makefile.
-
Öffne einmal das Makefile mit dem Editor und schau nach was bei TRG steht. Da sollte normalerweise der Name der C-Datei stehen, aber ohne die Endung *.c. Wenn du jetzt z.B. als Datei mit dem Hauptteil (main) die Datei "Test.c" hast muss in der makefile "TRG = Test" stehen.
MfG Hannes
-
kann ich das makefile so einrichten das es alle neuen *.c programme
maken kann?
-
Normalerweiße erzeugt AVR Studio das Makefile selbst. Probleme kann es geben, wenn man andere Libs verwendet. Ich verwende z.B. AVRlib, da muss ich die Makefile immer in den Projektordner kopieren und von Hand ändern. Ob du das so machen musst weiß ich aber nicht.
PS: Im Artikelbereich gibt es einen Artikel von der Installation und Anwendung der AVRlib http://www.rn-wissen.de/index.php/In...ung_von_avrlib
MfG Hannes