PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Pfade für AsuroFlash einstellen



Jack aus BW
19.12.2010, 19:35
Servus Leute,

ich würde gerne die eierlegende Wollmilchsau von Osser verwenden, aber ich glaube ich hab ein Problem mit den Pfaden.

Noch nicht einmal das einfachste Programm lässt sich compilieren.

So sieht es bei mir nach "make all" aus:

>Session Environment Variables:
AF_AVRDIR=C:\WinAVR-20100110
AF_PROJECT=Project1
AF_SOURCE_FILES=gruen.c
AF_ASM_SRC_FILES=
AF_PRGDIR=C:\Uli\Asuro\AsuroFlash
AF_PRJDIR=C:\Uli\Asuro\Testeinfach
AF_ASM_SRC_FILES=C:\ProgramData\AsuroFlash\asuro-lib\lib\inc\asuro.h
AF_ASURO_LIB_PATH=C:\ProgramData\AsuroFlash\asuro-lib\lib
File gruen.c saved.
>Default make_all.cmd file created.
>Default makefile created.
Make

C:\Uli\Asuro\Testeinfach>C:\WinAVR-20100110\utils\bin\make.exe clean
set -e; avr-gcc -MM -mmcu=atmega168 -DF_CPU=16000000UL -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=gruen.lst -IC:\Uli\Asuro\AsuroFlash\include gruen.c \
| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > gruen.d; \
[ -s gruen.d ] || rm -f gruen.d
-------- begin --------
rm -f Project1.hex
rm -f Project1.eep
rm -f Project1.obj
rm -f Project1.cof
rm -f Project1.elf
rm -f Project1.map
rm -f Project1.obj
rm -f Project1.a90
rm -f Project1.sym
rm -f Project1.lnk
rm -f Project1.lss
rm -f gruen.o C:\ProgramData\AsuroFlash\asuro-lib\lib\inc\asuro.h
rm -f C:\ProgramData\AsuroFlash\asuro-lib\lib\inc\asuro.h gruen.lst
rm -f gruen.s
rm -f gruen.d
Errors: none
-------- end --------

C:\Uli\Asuro\Testeinfach>C:\WinAVR-20100110\utils\bin\make.exe all
set -e; avr-gcc -MM -mmcu=atmega168 -DF_CPU=16000000UL -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=gruen.lst -IC:\Uli\Asuro\AsuroFlash\include gruen.c \
| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > gruen.d; \
[ -s gruen.d ] || rm -f gruen.d
-------- begin --------
avr-gcc --version
make: *** No rule to make target `Project1.hex', needed by `all'. Stop.
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.


ExitCode 2

Den Pfad: AF_ASM_SRC_FILES=C:\ProgramData\AsuroFlash\asuro-lib\lib\inc\asuro.h
, habe ich selbst gesetzt, weil er ursprünglich nicht angegeben war.

Findet jemand den Fehler?

Problem
21.12.2010, 17:06
Hallo

No rule to make target ............... need by `all`. stop. Ist der fehlercode oder?

Lg

Osser
21.12.2010, 19:21
Hi Jack aus BW,


kannst Du das Projekt mal zippen und hier hochladen, dann kann ich mir das mal anschauen.


Gruss,

O.

Jack aus BW
21.12.2010, 22:55
Servus Problem,
Servus Osser,

ich habe nur die Standarddatei, die bei AsuroFlash am Anfang immer geladen wird unter C:\Uli\Asuro\Testeinfach\gruen.c gespeichert und dann auf make all gedrückt. An der Quelldatei (heisst das so???) kann es also nicht liegen.

Inzwischen habe ich AsuroFlash Version 1.8.13.110 mehrmals installiert und wieder deinstalliert. Auch mit WinAVR-20100110 habe ich das mehrmals gemacht. Dadurch sehen meine Variablen für die Pfade wieder anders aus, und es gibt eine andere Meldung, ich komme schonmal garnicht mehr so weit wie vorher.

so sieht es jetzt aus:

>Session Environment Variables:
AF_AVRDIR=C:\WinAVR-20100110
AF_PROJECT=Project1
AF_SOURCE_FILES=new.c
AF_ASM_SRC_FILES=
AF_PRGDIR=C:\Programme\AsuroFlash
AF_PRJDIR=C:\Uli\Asuro\Testeinfach
AF_ASM_SRC_FILES=C:\ProgramData\AsuroFlash\asuro-lib\lib\asuro.h
AF_ASURO_LIB_PATH=C:\ProgramData\AsuroFlash\asuro-lib\lib
File new.c saved.
File asuro.h saved.
>Default make_all.cmd file created.
>Default makefile created.
Make

C:\Uli\Asuro\Testeinfach>C:\WinAVR-20100110\utils\bin\make.exe all
set -e; avr-gcc -MM -mmcu=atmega64 -DF_CPU=16000000UL -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=new.lst -IC:\Programme\AsuroFlash\include new.c \
| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > new.d; \
[ -s new.d ] || rm -f new.d
new.c:1:19: error: asuro.h: No such file or directory
-------- begin --------
avr-gcc --version
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.

make: *** [new.o] Error 1

Compiling C: new.c
avr-gcc -c -mmcu=atmega64 -DF_CPU=16000000UL -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=new.lst -IC:\Programme\AsuroFlash\include new.c -o new.o
new.c:1:19: error: asuro.h: No such file or directory

ExitCode 2
>Ready.
Nachdem ich irgendwo gelesen hab, dass man in der linken Spalte noch asuro.h einfügen muss, habe ich das diesmal gemacht. Ich hab jetzt also wieder ein anderes Problem als zuerst. Diesmal wird asuro.h nicht gefunden.

ist
AF_ASM_SRC_FILES=C:\ProgramData\AsuroFlash\asuro-lib\lib\asuro.h
das richtig so?[/scroll]

Jack aus BW
21.12.2010, 23:12
hier das Projekt

Jack aus BW
25.12.2010, 22:40
Heute habe ich mal wieder etwas herumprobiert:

Endlich habe ich bemerkt, daß ich die Datei asuro.h in das Projektverzeichnis kopieren muß. Die Pfade sollten jetzt stimmen. Die Default Datei, bei der nacher die StatusLED grün brennt wurde ohne Fehlermeldung compiliert.

Jetzt habe ich das erste Testprogramm aus der alten Asuro Doku abgetippt und bekommen dann die angehängten Fehlermeldungen.

Das Projekt hänge ich auch noch an. Villeicht weiss ja jemand, wo mein Problem liegt.

Osser
04.01.2011, 21:05
Hi Jack aus BW,


zum vorletzten Post:
Du hast die Datei asuro.h eingebunden in das Projekt. Header werden aber durch die 'c' Dateien via #include eingebunden und können nicht direkt compiliert werden.

zum letzten Post:
Als Erstes muss auch asuro.c in das Projekt eingebunden werden, da sonst asuro.h nur eine leere Hülle darstellt.
Irgentwie war meine ATMega8.afcfg nicht in Ordnung, probier mal die Datei die ich Angehängt habe. Danach hat sich bei mir alles ohne Fehler compilieren lassen.

Die ATMega8.afcfg steht Standardmässig in %AllUsersProfile%\AsuroFlash\Config
Evtl. stimmt der AVR lib Pfad noch nicht, stell den dann im Config Fenster ein auf deinen Pfad ein.
http://secius.com/AsuroFlash/images/ConfigDlg_Variables.png


Gruss,

O.

Jack aus BW
04.01.2011, 23:58
Servus Osser, Danke erstmal dass du die die Mühe gemacht hast den Beitrag zu beantworten. Ich wünsch dir erstmal alles Gute für 2011.
Ich hab jetzt folgendes gemacht:
Die Datei ATMega8.afcfg die du mir geschickt hast, ins Config Verzeichnis von AsuroFlash kopiert, nachdem ich die alte Version zuvor gelöscht hatte.
Die Datei asuro.h aus meinem Projekt entfernt, allerdings verbleibt eine Kopie der Datei im Projektordner. asuro.h wird ja über include eingebunden. Der Pfad für die Asuro.lib ist, wie du beschrieben hast, bei mir gesetzt.
Das Projekt besteht jetzt also noch aus new.c und asuro.c. Ist damit asuro.c richtig eingebunden?
Dann hab ich "make all" gedrückt und eine Latte von Fehlermeldungen bekommen. Ich hänge das Projekt und den Ausdruck der Fehlermeldungen nochmal an. Ich hab immer noch keine Ahnung, was ich falsch mache. Wenn ich die Fehlermeldungen richtig interpretiert hab, wurde new.c jetzt ohne Fehler compiliert, aber bei asuro.c hagelt es Fehlermeldungen. Hat es mir die Datei asuro.c irgedwie verbogen??

Osser
12.01.2011, 11:32
Hi,

in deinem makefile ist irgntwas falsch eingestellt, der steht auf atmega64 statt atmega8.

Verschiedene Möglichkeiten um das zu beheben:
1) Geh in das Config-Fenster auf den Tab Makefile und ändere die Zeile

# MCU name
MCU = atmega64

in

# MCU name
MCU = atmega8

2) Wähle eine andere Konfiguration z.B. ATMega168.afcfg und dann wieder ATMega8.afcfg und drücke F9(make all)
Schau dann zur Sicherheit wie bei (1) beschrieben ob

# MCU name
MCU = atmega8
im makefile steht.

Dann sollte es funktionieren.



Gruss,

O.

Jack aus BW
14.01.2011, 20:08
Servus Osser,

ich hab das mal probiert, aber es hat immer noch nichts geholfen.

Beim letzten Versuch habe ich

asuro.h
asuro.c
myasuro.h

in dasselbe Verzeichnis kopiert, in dem auch das Projekt steht.
Jetzt lässt sich asuro.c garnichtmehr compilieren. Mir ist noch aufgefallen, daß die Variable AF_ASM_SRC_FILES= nicht definiert ist. Kann das mein Problem sein? Wie setze ich diese Variable?


Kannst du mir vielleicht mal so ein "Einfachprojekt" als Kopie schicken, dann versuch ich hier mal das zu compilieren.

Ich hänge das Projekt und die Fehlermeldungen mal wieder mit an.

Osser
16.01.2011, 15:21
Hi,

Beispielprojekte werden immer mit installiert.
Die stehen in %allusersprofile%\AsuroFlash\Projects



Gruss,

O.

Jack aus BW
16.01.2011, 16:07
JUHUUUUU,

endlich, das hat geklappt.

D A N K E

Osser
17.01.2011, 22:15
Hi Jack aus BW,

da freu ich mich gleich mit \:D/
Weist Du denn jetzt was die Ursache war?


Gruss,

O.

Jack aus BW
17.01.2011, 22:34
Servus Osser,

ich hab ja keine große Ahnung von der ganzen Sache. Ich hab jetzt einfach mal das Testprojekt in einen anderen Pfad kopiert und plötzlich liess es sich compilieren.

Danach habe ich die Datei test.c gelöscht und dafür die test.c von der Linienverfolgung aus der asuro lib examples Datei in das Verzeichnis kopiert. Hat auch funktioniert.

Ich vermute das es ein Problem mit dem Makefile gab oder mit den Pfaden, so wie die Fehlermeldungen aussehen wurde die asuro lib nicht gefunden.

An der Test.c datei hab ich dann ein paar änderungen vorgenommen, um zu sehen wie der asuro reagiert.

Vermutlichhab ich jetzt ein neues Problem: ich hab den Asuro heute so ca 20 mal nue geflasht, jetzt lässt er sich nichtmehr flashen. Hab leider keine Ziet mehr für Fehlersuche.

Osser
18.01.2011, 13:27
Hi Jack aus BW,


ist schon OK.
Dachte nur Du wüsstest jetzt vielleicht was die Ursache war.




Gruss,

O.