PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Lib v.2.80 und AVR Studio ... Problem mit Build



Wo2le
15.05.2008, 22:39
Hallo erstmal ...

Ich hab den Asuro noch nicht sehr lange und normale Programme bekomme ich mitlerweile hin, wobei mir auch sehr diese Seite geholfen hat.
Jetzt möchte ich allerdings die neue Library versuchen. Deshalb hab ich sie mir geladen und dann installiert ... dann hab ich in der Make - Datei ...

# additional Include path for libraries
LIBPATH = C:/ASURO_src/ThirdTry

... ergänzt, (wie es in der anleitung stand) und die make-lib.bat ausgeführt. Wenn ich nun im AVR Studio die ganzen .c - files aus dem oban angeführten Pfad angebe und dann Build drücke, so kommt folgender Fehler:

gcc plug-in: Error: Object file not found on expected location C:\ASURO_src\ThirdTry\libasuro.elf
Make sure your makefile specifies the output .elf file as libasuro.a

...

Ich hab schon einiges Versucht, jedoch hängt sich das Program entweder auf oder es gibt diesen Fehler aus. Das es mit dem Linker des AVR-Compilers zusammenhängen muss weis ich mitlerweile und auch, dass es mein Verschulden sein muss, allerdings hab ich keine Ahnung was ich da noch versuchen könnte.

Mit Programmers Notepad [WinAVR] hab ich es übrigens auch schon versucht, jedoch zeigt er mir immer beim kommpilieren keine fehler an egal was ich schreibe.

Würde mich sehr über eure Hilfe freuen.

m.a.r.v.i.n
16.05.2008, 22:40
Hallo,

hier wird eigentlich genau beschrieben, wie man Projekte für den Asuro mit AVR Studio erzeugt:
http://www.asurowiki.de/pmwiki/pmwiki.php/Main/AVRStudio

Wo2le
18.05.2008, 13:44
Danke für den Link. Ich hatte zwar auch schon bei asurowiki.de geschaut aber das hatte ich nicht gefunden. Es hat mir sehr geholfen, allerdings hatte ich, nachdem ich dies, wie auf der seite beschrieben war, gemacht hatte, das Problem, dass es nicht Richtig kompilliert hatte. Egal was ich schrieb, er sagte es gäbe keine fehler und jetzt ist es komischerweise wieder das alte problem, dass die .elf datei irgendein problem hat.

m.a.r.v.i.n
20.05.2008, 09:58
Hallo,

was willst du eigentlich unter AVR Studio kompilieren, die AsuroLib oder ein Beispiel Programm für den Asuro?
Die AsuroLib läßt sich nicht in AVR Studio erstellen, zumindest habe ich noch keine Möglichkeit dazu gefunden. Das geht nur von der Kommandozeile aus mit dem 'make-lib.bat' Batch File.

Beispielprogramme lassen sich wie oben beschrieben unter AVR Studio erzeugen. Funktioniert denn das compilieren der Beispielprogramme von der Kommandozeile mit 'make-all.bat'? Wenn nicht, liegt es evtl. an einer falschen LIBPATH Angabe.

Wo2le
22.05.2008, 14:25
Danke für die schnelle und gute Diagnose XD ich wusste nicht dass in den Beispielprogrammen auch makefiles sind und deshalb hatte ich in der library in den makefile die LIBPATH reingeschrieben und versucht die library mit ner test.c datei zu erstellen ... mein fehler aber ich glaub alleine wär ich nicht drauf gekommen ... wie auch immer diese neue library is ma richtig geil ... ich hab nur ein Problem. Die GoTurn Funktion funktioniert bei mir nicht!

Die Fehlermeldung:
C:\WinAVR\bin\..\lib\gcc\avr\3.4.6\..\..\..\..\avr \bin\ld.exe: BFD 2.16.1 + coff-avr-patch (20050630) internal error, aborting at ../../binutils-2.16.1/bfd/reloc.c line 444 in bfd_get_reloc_size

C:\WinAVR\bin\..\lib\gcc\avr\3.4.6\..\..\..\..\avr \bin\ld.exe: Please report this bug.
Wäre nett wenn ich da noch Hilfe kriegen würde XD

damaltor
25.05.2008, 23:49
scheint am GCC zu liegen. versuch mal, alles auf die neueste version zu bringen.

Wo2le
26.05.2008, 18:37
big thx ... ihr habt echt ahnung, hätte sonst vieles nie geschafft XD

Niralus
06.07.2008, 07:59
hi leute,
ich hatte genau die gleiche Fehlermeldung bei der GoTurn() funktion.



Die Fehlermeldung:
C:\WinAVR\bin\..\lib\gcc\avr\3.4.6\..\..\..\..\avr \bin\ld.exe: BFD 2.16.1 + coff-avr-patch (20050630) internal error, aborting at ../../binutils-2.16.1/bfd/reloc.c line 444 in bfd_get_reloc_size

C:\WinAVR\bin\..\lib\gcc\avr\3.4.6\..\..\..\..\avr \bin\ld.exe: Please report this bug.
Wäre nett wenn ich da noch Hilfe kriegen würde XD

also hab ich die grad neuste Version installiert (WinAVR-20080610). Hab XP Home.
Danach schien alles gut zu sein. Die Fehlermeldung war verschwunden. Doch wenn ich jetzt das make-file aufruf kommt
bei dem Quellcode:



#include "asuro.h"

int main(void)
{
GoTurn (200, 0, 150);
while (1);
return 0;
}

die "Fehlermeldung":



> "N:\ASURO\ASURO_src\FirstTry\make-all.bat"

N:\ASURO\ASURO_src\FirstTry>make clean
-------- begin --------
rm -f test.hex
rm -f test.eep
rm -f test.obj
rm -f test.cof
rm -f test.elf
rm -f test.map
rm -f test.obj
rm -f test.a90
rm -f test.sym
rm -f test.lnk
rm -f test.lss
rm -f test.o asuro.o
rm -f test.lst asuro.lst
rm -f test.s asuro.s
rm -f test.d asuro.d
Errors: none
-------- end --------

N:\ASURO\ASURO_src\FirstTry>make MCU=atmega8 LIBFILE=asuro
set -e; avr-gcc -MM -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IN:/ASURO/ASURO_src/AsuroLib/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=N:/ASURO/ASURO_src/AsuroLib/lib/asuro.lst N:/ASURO/ASURO_src/AsuroLib/lib/asuro.c \
| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > asuro.d; \
[ -s asuro.d ] || rm -f asuro.d
set -e; avr-gcc -MM -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IN:/ASURO/ASURO_src/AsuroLib/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst test.c \
| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > test.d; \
[ -s test.d ] || rm -f test.d
-------- begin --------
avr-gcc --version
avr-gcc (WinAVR 20080610) 4.3.0
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.

avr-gcc -c -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IN:/ASURO/ASURO_src/AsuroLib/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst test.c -o test.o
avr-gcc -c -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IN:/ASURO/ASURO_src/AsuroLib/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=N:/ASURO/ASURO_src/AsuroLib/lib/asuro.lst N:/ASURO/ASURO_src/AsuroLib/lib/asuro.c -o asuro.o
avr-gcc -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IN:/ASURO/ASURO_src/AsuroLib/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.o test.o asuro.o --output test.elf -Wl,-Map=test.map,--cref -LN:/ASURO/ASURO_src/AsuroLib/lib -lm -lasuro
avr-objcopy -O ihex -R .eeprom test.elf test.hex
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \
--change-section-lma .eeprom=0 -O ihex test.elf test.eep
e:\Programme\APPS\Asuro_Editor\WinAVR-20080610\bin\avr-objcopy.exe: --change-section-lma .eeprom=0x00000000 never used
avr-objdump -h -S test.elf > test.lss
Size after:
test.elf :
section size addr
.text 1544 0
.bss 22 8388704
.debug_aranges 224 0
.debug_pubnames 508 0
.debug_info 2263 0
.debug_abbrev 1298 0
.debug_line 1982 0
.debug_frame 432 0
.debug_str 718 0
.debug_loc 553 0
Total 9544


Errors: none
-------- end --------

N:\ASURO\ASURO_src\FirstTry>pause
Drcken Sie eine beliebige Taste . . .


Dann drück ich unter Tools auf ""Stop Tools", und dann hängt sich das an den obrigen Text an:


> Forcefully terminating process...

> Process Exit Code: 1
> Time Taken: 00:48




Wenn ich die .hex dann flashe (Flashen funtzt), macht mein Asuro gar nichts. Ich hab die Lib AsuroLib-v280rc1 und eigentlich alles richtig eingerichet.
Kann mir jemand helfen?

Gruss,
Niralus