Hallo, Ich habe vor einiger Zeit ein Atmel Studio Projekt mit Arduino erstellt. Das hat auch funktioniert. Jetzt habe ich versucht das Projekt auf einem anderen PC zu öffnen jedoch bekomme ich einen Makefile Fehler: make: *** No rule to make target 'C:/Users/Bfm2Fe/Desktop/Men├╝/ArduinoSketch1/ArduinoSketch1/ArduinoCore /Debug/libArduinoCore.a', needed by 'sketch_apr09a.elf'. Stop. Kann mir jemand sagen, was das zu bedeuten hat und wie ich den fehler beheben kann? Viele Grüße Max ------ Build started: Project: ArduinoCore, Configuration: Debug AVR ------ Build started. Project "ArduinoCore.cppproj" (default targets): Target "PreBuildEvent" skipped, due to false condition; ('$(PreBuildEvent)'!='') was evaluated as (''!=''). Target "CoreBuild" in file "C:\Program Files (x86)\Atmel\Studio\7.0\Vs\Compiler.targets" from project "C:\Users\Bfm2Fe\Desktop\Menü\ArduinoSketch1\ArduinoSketch1\ArduinoCore\ ArduinoCore.cppproj" (target "Build" depends on it): Using "RunCompilerTask" task from assembly "C:\Program Files (x86)\Atmel\Studio\7.0\Extensions\Application\AvrGCC.dll". Task "RunCompilerTask" Shell Utils Path C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils\make.exe all --jobs --output-sync make: Nothing to be done for 'all'. Done executing task "RunCompilerTask". Using "RunOutputFileVerifyTask" task from assembly "C:\Program Files (x86)\Atmel\Studio\7.0\Extensions\Application\AvrGCC.dll". Task "RunOutputFileVerifyTask" Done executing task "RunOutputFileVerifyTask". Done building target "CoreBuild" in project "ArduinoCore.cppproj". Target "PostBuildEvent" skipped, due to false condition; ('$(PostBuildEvent)' != '') was evaluated as ('' != ''). Target "Build" in file "C:\Program Files (x86)\Atmel\Studio\7.0\Vs\Avr.common.targets" from project "C:\Users\Bfm2Fe\Desktop\Menü\ArduinoSketch1\ArduinoSketch1\ArduinoCore\ ArduinoCore.cppproj" (entry point): Done building target "Build" in project "ArduinoCore.cppproj". Done building project "ArduinoCore.cppproj". Build succeeded. ------ Build started: Project: sketch_apr09a, Configuration: Debug AVR ------ Build started. Project "sketch_apr09a.cppproj" (default targets): Target "PreBuildEvent" skipped, due to false condition; ('$(PreBuildEvent)'!='') was evaluated as (''!=''). Target "CoreBuild" in file "C:\Program Files (x86)\Atmel\Studio\7.0\Vs\Compiler.targets" from project "C:\Users\Bfm2Fe\Desktop\Menü\ArduinoSketch1\ArduinoSketch1\sketch_apr09 a\sketch_apr09a.cppproj" (target "Build" depends on it): Using "RunCompilerTask" task from assembly "C:\Program Files (x86)\Atmel\Studio\7.0\Extensions\Application\AvrGCC.dll". Task "RunCompilerTask" Shell Utils Path C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils C:\Program Files (x86)\Atmel\Studio\7.0\shellUtils\make.exe all --jobs --output-sync make: *** No rule to make target 'C:/Users/Bfm2Fe/Desktop/Men├╝/ArduinoSketch1/ArduinoSketch1/ArduinoCore /Debug/libArduinoCore.a', needed by 'sketch_apr09a.elf'. Stop. Done executing task "RunCompilerTask" -- FAILED. Done building target "CoreBuild" in project "sketch_apr09a.cppproj" -- FAILED. Done building project "sketch_apr09a.cppproj" -- FAILED. Build FAILED. ========== Build: 1 succeeded or up-to-date, 1 failed, 0 skipped ==========
In Zeile 108 wird nach nach dem Target '...libArduinoCore.a' gesucht, dass in der Variablen LIB_DEP steckt. Das Target existiert aber in deinem Makefile nicht. Generell versuchst du Libraries und Linker-Skript als prerequisites zu übergeben anstatt sie als Flags dem Compiler zu übermitteln. Du brauchst beim Linken sowas wie '-lArduinoCore' und '-TLinkerscript.ld'. Ich würde empfehlen im Netz noch einige Makefile Beispiele zu lesen. Zum Beispiel sowas hier: https://spin.atomicobject.com/2016/08/26/makefile-c-projects/
Hallo nochmal. Natürlich habe ich die Lösung direkt gefunden, nachdem ich den Beitrag geschrieben hatte. Das Problem war, dass das Projekt im Ordner Menü war. Das ü hat dem Compiler wohl nicht gefallen. Jetzt funktioniert alles. Viele Grüße Max
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.