Atmel Studio 6 - Buildproblem

OP #2732814
Lesenswert?

Hallo Leute ich bin total neu hier, ich brauche dringende Hilfe.
ich bin umgestiegen von Eclipse auf Atmel Studio 6, ich habe folgendes
Problem, ich versuche mein Projekt per Jtagice mkii auf den µC Atmega64
zu flashen. leider geht das nicht.. wo mach ich was falsch??
Wenn ich auf Start klicke kriege ich folgende Meldung:

Build started.
Project "Testxx.cproj" (default targets):
Target "PreBuildEvent" skipped, due to false condition;
('$(PreBuildEvent)'!='') was evaluated as (''!='').
Target "CoreBuild" in file "C:\Program Files\Atmel\Atmel Studio
6.0\Vs\Compiler.targets" from project "C:\Atmel
Studio\Testxx\Testxx\Testxx.cproj" (target "Build" depends on it):
  Task "RunCompilerTask"
    C:\Program Files\Atmel\Atmel Studio 6.0\make\make.exe all
    make: Nothing to be done for `all'.
  Done executing task "RunCompilerTask".
  Task "RunOutputFileVerifyTask"
        Program Memory Usage   :  23474 bytes   35,8 % Full
        Data Memory Usage     :  2267 bytes   55,3 % Full
        EEPROM Memory Usage   :  917 bytes   44,8 % Full
  Done executing task "RunOutputFileVerifyTask".
Done building target "CoreBuild" in project "TestTW8832.cproj".
Target "PostBuildEvent" skipped, due to false condition;
('$(PostBuildEvent)' != '') was evaluated as ('' != '').
Target "Build" in file "C:\Program Files\Atmel\Atmel Studio
6.0\Vs\Avr.common.targets" from project "C:\Atmel
Studio\Testxx\Testxx\Testxx.cproj" (entry point):
Done building target "Build" in project "Testxx.cproj".
Done building project "Testxx.cproj".

Build succeeded.
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped
==========

Für jegliche hilfe bin ich sehr dankbar..

VG
Gast #2733027
Lesenswert?

No Name schrieb:
> das hab ich auch schon ausprobiert, geht leider auch nicht, der jtag
> blinkt zunächst grün dann orange und dann blinkt er wieder rot und am
> ende wird nichts auf dem display angezeigt :(

1. Guck doch mal ob ein Hex-File erzeugt wurde.
2. Was machen die Fuse-Bits?
3. Funktionierte dein Programm schonmal?
4. F_CPU definiert?
5. Mach mal Werror an


Ingo
OP #2733181
Lesenswert?

> 1. Guck doch mal ob ein Hex-File erzeugt wurde.
> 2. Was machen die Fuse-Bits?
> 3. Funktionierte dein Programm schonmal?
> 4. F_CPU definiert?
> 5. Mach mal Werror an
>
>
> Ingo

1. Hex-File wurde erzeugt
2. Fusebits sind gesetzt..
3. mein Programm funktioniert auf Eclipse ja nicht aber auf Atmel Studio 
6 :(
4. F_CPU ist auch definiert
5. Wie macht man ein Werror?
Gast #2733188
Lesenswert?

>3. mein Programm funktioniert auf Eclipse ja nicht aber auf Atmel Studio
>6 :(

Dann hattest du bei Eclipse evtl. die Optimierung nicht
eingeschaltet, beim AVR STudio aber schon. Und bumm fliegen
einem Warteschleifen die für den Compiler keinen Sinn machen
um die Ohren.  Wegoptimiert.

Code zeigen!
OP #2733235
Lesenswert?

holger schrieb:
>>3. mein Programm funktioniert auf Eclipse ja nicht aber auf Atmel Studio
>>6 :(
>
> Dann hattest du bei Eclipse evtl. die Optimierung nicht
> eingeschaltet, beim AVR STudio aber schon. Und bumm fliegen
> einem Warteschleifen die für den Compiler keinen Sinn machen
> um die Ohren.  Wegoptimiert.
>
> Code zeigen!

das ist ein mega projekt, was genau soll ich denn zeigen?
Gast #2733274
Lesenswert?

No Name schrieb:
> bin total neu in allem :((

No Name schrieb:
> das ist ein mega projekt

Wo hast du das Mega-Projekt denn kopiert? Vielleicht ein Link?

Ingo schrieb:
> Lass doch in deinem Programm örstmal eine LED blinken bevor du dich auf
> ein LCD stürzt...

Das mit der LED klappt doch längst:

No Name schrieb:
> der jtag
> blinkt zunächst grün dann orange und dann blinkt er wieder rot
Gast #2924354
Lesenswert?

Hallo zusammen

Mir ist bewusst, dass dieser Tread schon alt ist, da jedoch noch niemand 
eine Lösung gepostet hat oder das Problem erkannt hat und bei der 
googlesuche nach "avr studio make: Nothing to be done for `all'." der 
erste Treffer hier ist, werde ich meine Lösung posten.

Lösungsweg: 1. unter "Project-projektname properties-Build" Use external 
Makfile aktivieren und bei dem Pfad der Pfad zum Automatisch generierten 
Hex-File eingeben.
           2. Neues Projekt anlegen, welches einen kurzen Pfad hat*.



Das Problem liegt am Makefile, oder besser gesagt der Pfad dahin.
Wenn du das Projekt zum ersten mal kompilierst oder neu kompilierst nach 
dem du eine weitere Datei zum Projekt hinzugefügt hast, wird das 
Makefile neu erstellt, und wird am make.exe (Atmel Studio 
6.0\make\make.exe) korrekt übergeben. Somit kann make.exe gcc-avr die 
korrekten befehle geben.
Danach wird allerdings der Pfad zum Makefile nicht korrekt gespeichert 
(vermutlich wegen der Pfadlänge).

Die Meldung "make: Nothing to be done for `all'." bedeutet, das make.exe 
nichts gegeben wird, da er dass Makefile nicht findet. Somit wird auch 
nichts Kompilierst und das HEX-File wird nicht neu erstellt.

> 1. Hex-File wurde erzeugt
Nur das erste mal, danch wird es nicht aktualisiert.
(Zum testen kannst du das HEX-File löschen)


Ob dein code Compiliert wird, kannst du z.b. testen, in dem du eine 
unbenutzte lokale variable erstellst. Kommt eine Warnung wird er 
Compiliert. eine andere möglichkeit gibt es mit "#error".





No Name schrieb:
> das hab ich auch schon ausprobiert, geht leider auch nicht, der jtag
> blinkt zunächst grün dann orange und dann blinkt er wieder rot...
Da hast du villeicht ein weiteres Problem, was jedoch nichts mit dem 
anderen zu tun hat.
Die LED sollte nicht rot sein, ausser du hast z.b. nicht die richtige 
Spannung auf dem uC.




*Bei mir tauchte dieses Problem auf, sobald der Pfad zulannge wird 
(inklusive Sourcefiles).

Freundliche Grüsse

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