Forum: Mikrocontroller und Digitale Elektronik Arduino kein kompilieren mehr möglich


von Michael L. (looser13)


Lesenswert?

Hallo zusammen,

ich habe folgendes Problem.

Ich habe ein SD-Card-Modul (von Pollin) an einen UNO angeklemmt.
Dann habe ich den Beispielcode "CardInfo" hochgeladen.
Alles toll, alles auf der Karte wurde auch angezeigt.

Nach einer Pause und PC-Neustart habe ich die IDE wieder gestartet. Es 
kam die autom. Updatefunktion von Arduino.
Dort habe ich die neueste Version für die Boards und SD-Cards 
installiert.

Danach zeigte mir die serielle Anzeige an, das die SDCard erkannt, aber 
kein FAT16/32 eingerichtet ist.

Laut Windows aber noch alle Daten vorhanden mit FAT32.
Ich also Version 1.0.12 deinstalliert und die neueste 1.8.0 installiert.
Dann kam die Fehlermeldung (siehe unten).
Also erneut deinstalliert, auch CCleaner drüber laufen lassen.
Immer noch die Fehlermeldung. Habe auch 1.0.12 wieder installiert - nix.

Hab jetzt wieder 1.8.0 darauf.... Immer noch der Fehler.

Hilfe, was nun.


Hier die Fehlermeldung:





Arduino: 1.8.0 (Windows 10), Board: "Arduino/Genuino Uno"

exec: 
"C:\\Users\\MP\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr 
-gcc\\4.9.2-atmel3.5.3-arduino2/bin/avr-g++":  file does not exist
Fehler beim Kompilieren für das Board Arduino/Genuino Uno.
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\EEPROM  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\EEPROM  gefunden
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\HID  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\HID  gefunden
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\SoftwareSerial  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\SoftwareSerial  gefunden
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\SPI  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\SPI  gefunden
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\Wire  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\Wire  gefunden
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\EEPROM  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\EEPROM  gefunden
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\HID  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\HID  gefunden
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\SoftwareSerial  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\SoftwareSerial  gefunden
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\SPI  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\SPI  gefunden
Ungültige Bibliothek 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\Wire  in 
C:\Users\MP\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.16 
\libraries\Wire  gefunden

Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre.
-----------

von g457 (Gast)


Lesenswert?

> "C:\\Users\\MP\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr
> -gcc\\4.9.2-atmel3.5.3-arduino2/bin/avr-g++":  file does not exist
                                                 ^^^^^^^^^^^^^^^^^^^
HTH

von Michael L. (looser13)


Lesenswert?

Hi HTH,

das habe ich gesehen, aber woher bekomme ich die Datei jetzt.
Durch Neuinstallation leider nicht.

Looser13

von g457 (Gast)


Lesenswert?

> Durch Neuinstallation leider nicht.

Wahrscheinlich ist die Toolchain durch Update/Neuinstallation woanders 
hin installiert worden -> suchen, adäquat umstellen.

von Gerhard O. (gerhard_)


Lesenswert?

Deinem Fehler bin ich bis jetzt noch nicht begegnet. Aber Du könntest 
ein kleines Experiment machen. Ich habe bei mir mehrere Versionen vom 
Arduino IDE installiert. Du kannst Dir von der Webseite eine ZIP 
Installation runterladen die schon vorinstalliert ist.

Platziere sie einfach (nach dem unzippen) im C drive in einem neuen 
Directory wie "Arduino_V123". Dann such dir die Arduino EXE zum Starten.

Es ist möglich dass diese Version sich auf das Vorhandensein der USB 
Treiber verläßt. Jedenfalls sollte das sonst einwandfrei funktionieren. 
Versuch es mal. Am besten lade Dir die Version herunter die bei Dir 
vorher einwandfrei funktioniert hat. Es ist auch möglich, daß die letzte 
Version irgendeinen Installations Bug hat und Dir das Environment vesaut 
hat.

Du könntest auch in der PC Verwaltung den "PATH" ansehen. (Ich habe 
allerdings diesbezüglich noch nie einen Grund gehabt nachzusehen und 
weiss jetzt ncht ob Arduino hier was hinzufügt.) Habe gerade keinen 
Zugang zum PC weil ich gerade mit einem Tablet arbeite.

Viel Glück - Vielleicht hilft es Dir das mal ausprobieren,
Gerhard

: Bearbeitet durch User
von Veit D. (devil-elec)


Lesenswert?

Hallo,

hier stimmt was mit den Versionen nicht.
Was hast du für einen Arduino?
Von .cc oder .org?

.cc hat die IDE v1.6.13 aktuell, also v1.6.x

.org hat die IDE v1.8.0 aktuell.

Wenn du ehrlich bist, haste das selbst durcheinander gebracht.
Die updaten sich nicht gegenseitig.

von Bernd K. (prof7bit)


Lesenswert?

Wie gut dass das Arduino-Zeugs so einfach ist dass man selbst ohne 
jegliche Kenntnisse der verwendeten Werkzeuge damit arbeiten kann.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

musst nicht unken. Mit Atmel Studio liest man auch von den tollsten 
Problemen.

Ich weiß nicht was beim TO wirklich schief gelaufen ist. Jedoch gibt es 
im Normalfall keine solchen Probleme. Die IDE von .cc updatet sich auch 
nicht von selbst, noch nie erlebt.

Beim TO hilft bestimmt nur die komplette IDE Deinstallation inkl. des 
Treibers im Gerätemanager und löschen der Daten im User/.../temp 
Verzeichnis.
Dann Neuinstallation inkl. Treiber.

von Vergnatzter Gimpel (Gast)


Lesenswert?

Bernd K. schrieb:
> Wie gut dass das Arduino-Zeugs so einfach ist dass man selbst ohne
> jegliche Kenntnisse der verwendeten Werkzeuge damit arbeiten kann.

So, wie Du drauf bist, hat Dir der Weihnachtsmann bestimmt einen Arduino 
Uno geschenkt.

von Bernd K. (prof7bit)


Lesenswert?

Vergnatzter Gimpel schrieb:
> Bernd K. schrieb:
>> Wie gut dass das Arduino-Zeugs so einfach ist dass man selbst ohne
>> jegliche Kenntnisse der verwendeten Werkzeuge damit arbeiten kann.
>
> So, wie Du drauf bist, hat Dir der Weihnachtsmann bestimmt einen Arduino
> Uno geschenkt.

Nein, der ist seit Langem in Rente und treibt jetzt nur noch die 
Weihnachts-Lightshow am Fenster. Den Compiler dafür hab ich auch ohne 
fremde Hilfe gefunden.

von visitor (Gast)


Lesenswert?

Irgendwie ist bei Arduino.cc und .org jeweils die gleiche IDE 1.8.0 seit 
heute downloadbar. Hat wohl etwas mit dem Zusammenschluss beider zu tun. 
Ich frage mich, baut die neue 1.8.0 auf die 1.6.13 oder auf der 1.7.xx 
von .org auf?

Mein Favorit war bislang immer die SW von .cc, ich hoffe dieser Zweig 
wird nun weiter gepflegt.

von Michael L. (looser13)


Lesenswert?

Hallo Veit Devil,

ich habe vorher die Version von .cc gehabt und auch die 1-8-0 ist 
natürlich von .cc

Das es 2 verschiedene Versionen gibt, gab, wußte ich, das die jetzt aber 
wieder zusammen eine Version haben, nicht.


Hi Gerhard O.,
habe das mit der Zip probiert, leider immer noch die gleiche 
Fehlermeldung,
obwohl die Datei jetzt in dem Ordner liegt????? Habe neu gestartet, auch 
nicht besser.

Werde jetzt mal:

"Beim TO hilft bestimmt nur die komplette IDE Deinstallation inkl. des
Treibers im Gerätemanager und löschen der Daten im User/.../temp
Verzeichnis.
Dann Neuinstallation inkl. Treiber."

probieren.

Hatte den Treiber nicht mitdeinstalliert.
Vielleicht hilft das ja........

Danke schon mal.
Looser13

von Michael L. (looser13)


Lesenswert?

Hallo zusammen,

danke Veit Devil für den entscheidenen Tipp:

"Beim TO hilft bestimmt nur die komplette IDE Deinstallation inkl. des
Treibers im Gerätemanager und löschen der Daten im User/.../temp
Verzeichnis.
Dann Neuinstallation inkl. Treiber."

Das entscheidene war das löschen des Userordners.
Ich dachte immer, das CCleaner solche Ordner auch mitlöscht.

Egal, es funktioniert, das ist das wichtigste.

Vielen Dank Euch allen.

von G. H. (schufti)


Lesenswert?

um solche verqueren Situationen zukünftig zu vermeiden:

immer die .zip Version verwenden und vor dem ersten Aufruf der IDE im 
entpackten Verzeichnis einen Ordner "portable" anlegen; dort landen dann 
alle Einstellungen und User-dateien.

So kann man beliebige Versionen parallel installieren und auch wieder 
loswerden ohne sich Einstellungen zu zerschießen oder suchen zu müssen.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

freut mich das es nun wieder funktioniert.

Das mit dem "portable" Ordner Trick kannte ich auch noch nicht. Danke.
Ansonsten wären die .zip Version zwar getrennt aber die Einstellungen 
liegen für alle "zentral" in einer Datei.

Wegen der 1.8.0 von .org und 1.6.13 von .cc
Ich sehe gerade das .cc die Versionnummer gleichgezogen hat.
Beide haben jetzt eine IDE mit v.1.8.0
War bis vor paar Tagen noch verschieden.
Deswegen das durcheinander. Konnte ja niemand ahnen.   :-)
Ob die IDE nun wirklich intern gleich sind, weiß ich nicht.
Bis jetzt konnte man sie an der Versionnummer auseinanderhalten.

Beobachten und Readme lesen ...

In den IDE Change Logs der 1.8.0 steht bei beiden erstmal genau das 
gleiche drin. Ob sie ansonsten gleich sind probiere ich aber jetzt nicht 
aus.

: Bearbeitet durch User
von Jonas G. (jstjst)


Lesenswert?

Hallo,

auf dem Blog ist mal zu lesen, dass sich .CC und .org breites im Oktober 
wieder geeignet haben und jetzt beide IDEs wieder zusammengeführt sind. 
Hört sich erstmal gut an, mal schauen was kommt.

https://blog.arduino.cc/2016/12/23/new-ide-for-all-arduino-boards/
https://blog.arduino.cc/2016/10/01/two-arduinos-become-one-2/

Gruß Jonas

von Michael L. (looser13)


Lesenswert?

Ein frohes neues Jahr Euch allen,

Ich habe den Tipp von schufti befolgt und habe jetzt die 1.6.12 + 1.8.0 
parallel auf dem Rechner, danke nochmal für den Tipp.

Das das mit der SD-Karte funktioniert aber nicht bei beiden Programmen.

Bei der 1.6.12 ohne Probleme und bei der 1.8.0 sagt Arduino: 
"Initialisierung fehlgeschlagen".

Sind die Versionen denn so unterschiedlich???

Was mache ich eigentlich, wenn das Fenster "Updates.." kommt.
Dort wird mir für Boards und Bibliotheken jeweils neuere Versionen 
angeboten.
Soll ich die aktuellste nehmen oder müssen die 
Board+Bibliothekenversionen zu den Arduinoversionen passen?

Sind die dann geladenen Updateversionen einzelnd wieder löschbar, wenn 
wo?

Fragen über Fragen...
looser13

von Veit D. (devil-elec)


Lesenswert?

Moin moin & gesundes Neues,

bei einem IDE Update wird zuerst die alte Version komplett deinstalliert 
und dann die neue installiert. Das bedeutet, alle Librarys der IDE 
werden gelöscht und dann neu installiert. Wie wenn man selbst 
deinstalliert und neu installieren würde.

Also wenn du keine eigenen Librarys im Installationsordner oder sonst 
wichtige Dateien dort abgelegt hast, kannste entspannt updaten.
Für gewöhnlich liegen die Sketche im Dokumentenpfad und eigene oder 
zusätzliche Libs auch. Das bleibt erhalten.

Ich persönlich mache aber immer ein Backup vorm Update. Hast du WinRar 
auf dem Rechner? Dann kann ich dir eine Batchdatei geben.

Mit der SD Karten Initialisierung gibts einen kleinen Bug, wenn man nach 
raus/rein weiter schreiben/lesen möchte.

In der SD.cpp  Zeile 337 muss man nur eine kleine Änderung vornehmen.
1
boolean SDClass::begin(uint8_t csPin) {
2
  /*
3
4
    Performs the initialisation required by the sdfatlib library.
5
    Return true if initialization succeeds, false otherwise.
6
7
    Eine Zeile ergänzt, root wird geschlossen falls offen, damit kann jederzeit erneut initialisiert werden,
8
  zum Bsp. nach Kartenwechsel    
9
  */
10
  
11
  if (root.isOpen()) root.close();      // allows repeated calls
12
  return card.init(SPI_HALF_SPEED, csPin) &&
13
         volume.init(card) &&
14
         root.openRoot(volume);
15
}


eine bessere SD Lib ist allerdings die SdFat von einem gewissen greiman.

von Einer K. (Gast)


Lesenswert?

Michael L. schrieb:
> Sind die dann geladenen Updateversionen einzelnd wieder löschbar, wenn
> wo?

Im Library Manager und im Board Manager kannst die die gewünschte 
Version auswählen.

von Michael L. (looser13)


Lesenswert?

Arduino F. schrieb:
> Michael L. schrieb:
>> Sind die dann geladenen Updateversionen einzelnd wieder löschbar, wenn
>> wo?
>
> Im Library Manager und im Board Manager kannst die die gewünschte
> Version auswählen.

Hi Arduino F.,

habe den Library Manager gefunden, aber damit kann man wohl nur andere 
Versionen installieren, nicht deinstallieren...

Oder gibt es da einen Trick 18??
Gruß

von Michael L. (looser13)


Lesenswert?

Veit D. schrieb:

> eine bessere SD Lib ist allerdings die SdFat von einem gewissen greiman.

Okay, wollte ich versuchen.

Habe unter:
https://github.com/greiman/SdFat
die SdFat-master.zip geladen.
Dann unter Sketch - Bibliothek einbinden - .Zip-Bibliothek hinzufügen
die Datei im Downloadordner ausgewählt.
Dann erscheint aber: Angegebener Ordner/ZIP-Datei enthält keine gültige 
Bibliothek

Ist das die falsche zip????
Gruß

von Veit D. (devil-elec)


Lesenswert?

Hallo,

mit den beiden Managern kann man nur neue hinzufügen. Versionen 
auswählen geht nicht. Wer mehrere IDE Version möchte muss die portable 
verwenden.

Ich binde die Libs immer zu Fuss ein.
.zip entpacken. In dem Fall Ordner "SdFat-master" umbennen in nur 
"SdFat".
Diesen Ordner "SdFat" in den
C:\Users\xxx\Documents\Arduino\libraries
verschieben.
IDE neu starten.

von Michael L. (looser13)


Lesenswert?

>Veit D. schrieb:
> Ich binde die Libs immer zu Fuss ein.
> .zip entpacken. In dem Fall Ordner "SdFat-master" umbennen in nur
> "SdFat".
> Diesen Ordner "SdFat" in den
> C:\Users\xxx\Documents\Arduino\libraries verschieben.
> IDE neu starten.

Hi,
habe ich gemacht.
Habe dann im Sourcecode die Zeile
#include <SD.h> rausgenommen und dafür laut GitHub:
#include "SdFat.h"
SdFat SD;
reinkopiert.
Dann sollte das "alte" Programm funktionieren.

Leider nicht. Ist wohl nicht mein Tag......

In dem Bibliothekenmanager taucht die Lib aber nicht auf, richtig??

Gruß

von Michael L. (looser13)


Lesenswert?

Arduino: 1.8.0 (Windows 10), Board: "Arduino/Genuino Uno"

C:\Users\MP\Documents\Arduino\sketch_jan01a\sketch_jan01a.ino:3:19: 
fatal error: SdFat.h: No such file or directory

 #include "SdFat.h"

                   ^

compilation terminated.

exit status 1
Fehler beim Kompilieren für das Board Arduino/Genuino Uno.

von zuzu (Gast)


Lesenswert?

Vielleicht ist die library nicht korrekt installiert.
- zip von github herunterladen
- zip entpacken
- aus dem entpackten Ordner den Ordner "SdFat" nehmen und nach 
C:\Users\xxx\Documents\Arduino\libraries kopieren
- IDE neu starten

nun sollte unter File -> Examples ein neuer Eintrag("SdFat") mit den 
enthaltenen Beispielen zu finden sein. Lade ein einfaches Beispiel, z.B. 
"SdInfo", passe die Zeile:

  const uint8_t SD_CHIP_SELECT = SS;

mit dem zu deiner Verkabelung passenden Pin an.

Nun kannst du mit "Upload" den Code kompilieren und auf den Arduino UNO 
übertragen.

von Einer K. (Gast)


Lesenswert?

Veit D. schrieb:
> mit den beiden Managern kann man nur neue hinzufügen. Versionen
> auswählen geht nicht.


Erstaunlich!
KA, was da bei dir schief läuft.....

Bei mir ist das Version auswählen kein Problem!
Wenn es denn verschieden Versionen gibt. Und das ist wohl bei den 
meisten Boards und Libs der Fall.

Und die ausgewählte Version wird dann auch genutzt.
Das gilt für beide Manager.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

du kannst doch nicht einfach im Sketch die include Lib ändern und den 
Rest belassen! Die sind doch nicht kompatibel!
Gehe die mitgebrachten Bsp. der Lib durch.

Im Lib Manager taucht die nicht. Dann müßtest du darin nach einer sdfat 
suchen und natürlich vorher die manuell installierte löschen.

@Fanboy:
das im Lib Manager verschiedene Libs auftauchen zur Auswahl ist klar.
Im Board Manager taucht auch nichts alleine auf, man muss die URL 
kennen.
Aber wie und wo willst du die IDE Version auswählen? Das ist mir unklar.

von Einer K. (Gast)


Lesenswert?

Veit D. schrieb:
> Aber wie und wo willst du die IDE Version auswählen? Das ist mir unklar.

IDE Version?
Nöö..

Ich habe verstanden, dass die Lib Version ausgewählt werden soll.


Hier noch mal die Frage, zur Erinnerung:
Michael L. schrieb:
> Was mache ich eigentlich, wenn das Fenster "Updates.." kommt.
> Dort wird mir für Boards und Bibliotheken jeweils neuere Versionen
> angeboten.
> Soll ich die aktuellste nehmen oder müssen die
> Board+Bibliothekenversionen zu den Arduinoversionen passen?
>
> Sind die dann geladenen Updateversionen einzelnd wieder löschbar, wenn
> wo?
Und das tut man eben in den beiden Managern.

von Michael L. (looser13)


Lesenswert?

Hi,

habe unter Datei - Voreinstellungen - Sketchbuch-Speicherort noch das 
Arduino hinzugefügt.
Lautet jetzt:
c:\user\xx\document\Arduino

Eine Ebene tiefer ist der Library-Ordner
Und so hat es jetzt geklappt. Jetzt sind auch die Beispiele da.

Übrigends mit dem zuletzt gesendeten Code hat es auch funktioniert. 
Werde mir aber trotzdem die Beispiele anschauen und nehmen.

Danke also an alle. Ich dachte schon das wird nichts mehr. Super Forum.

Noch einen schönen Abend.
Gruß

von G. H. (schufti)


Lesenswert?

bei "portabler" Installation solltest du libs besser im 
...\portable\sketchbook\libraries\ Ordner unterbringen.

generell kannst du dann natürlich auch beim Test einer neuen IDE Version 
einfach den "alten" "portable" Ordner vor dem ersten Aufruf in die neue 
IDE klonen.

: Bearbeitet durch User
von Veit D. (devil-elec)


Lesenswert?

Hallo,

schön das es noch geklappt hat.

@Fanboy:
sorry, dann hatte ich was völlig falsch verstanden bzw. gelesen

von Michael L. (looser13)


Lesenswert?

G. H. schrieb:
> bei "portabler" Installation solltest du libs besser im
> ...\portable\sketchbook\libraries\ Ordner unterbringen.


Habe die Libs jetzt unter ..\portable\..... liegen.
Funktioniert super.




> generell kannst du dann natürlich auch beim Test einer neuen IDE Version
> einfach den "alten" "portable" Ordner vor dem ersten Aufruf in die neue
> IDE klonen.

Das ist ja klasse. Dann kann ja gar nichts mehr anbrennen.

Danke für die beiden Tipps.

looser13

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
Noch kein Account? Hier anmelden.