Probleme mit V1.6

Moin!

Ich habe mir die neue 1.6 geholt und nix läuft!

Zunächst habe ich alle vorhanden Libraries in den Library-Ordner der neuen Version gespielt.

Wenn ich Werkzeuge anwähle, dauert es mehrere Sekunden, bis sich das Fenster öffnet.
Beim kompilieren von Programmen, die unter V1.05 problemlos laufen,
hagelt es Fehlermeldungen, die Libraries betreffend.

Ist die neue Version buggy oder bin ich zu doof?

Achja: Ich benutze Win 7 Prof. 64bit.

Ist die neue Version buggy oder bin ich zu doof?

Zum ersteren habe ich noch nichts bemerkt.
Zu zweiterem sage ich besser nichts! :sunglasses:

Die 1.6 läuft bei mir unter XP32 gut.

Zunächst habe ich alle vorhanden Libraries in den Library-Ordner der neuen Version gespielt.

Das brauchte ich nicht.

Warum hast du das getan?
In den Libs hat sich einiges verändert.

Hatte vorher eine 1.5.X Beta drauf.
Der Installer hat diese entfernt und die 1.6 drauf gespielt.
Die zum Paket gehörigen Libs wurden ersetzt.
Meine gesammelten und selbstgebastelten Libs blieben in "Eigene Dateien\Arduino" erhalten.

Never change a running system!

Wie lauten die Fehlermeldungen :zipper_mouth_face: ?
Solange man nicht die gezippte Version nutzt, entspricht der alte Sketch/Libary-Ordner dem neuen. Sorglos sollte man keine Software oder Libarys installieren. Hast du zuvor geprüpft, ob die Libarys überhaupt kompatibel? Eine 1.5.x Libary ist hier zum Test zu bevorzugen anstatt eine 1.0.x zu verwenden.

Ob die 1.6 buggy ist, kann ich nicht beurteilen. Die andere Frage lasse ich mal offen im Raum stehen- :grin:

So, ich habe nochmal die Original-Libraries entpackt und meine dazugespielt.
Erfolg: Null, Fehler ohne Ende.

z.b. heisst “TM1637.h” jetzt “TM1637Display.h”.

Ich habe keine Lust, sämtliche Libraries und Quellen umzubauen und bleibe bei der 1.0.5.

Schade, einige neuen Features hätten mir gefallen.

Hier mein Testprog. und die Fehlerliste

sketch_feb13a.ino (2.91 KB)

Errors.txt (6.72 KB)

Das sind "Fehler" die aber auch schon bei der 1.5.x aufgetreten sind. Eher war es der 1.0.x geschuldet, das es überhaupt ging.

Du brauchst lediglich eine aktuelle Version der Time Library. Da ist das behoben.

Oder schreib sie per Hand so um dass PROGMEM Konstanten const sind, und Arrays aus Strings korrekt als const * const (const Zeiger auf const Daten) deklariert sind.

Liegt an der neuen Compiler Version die da jetzt zwingend auf const pocht. Das hätte auch vorher schon so gemacht werden sollen, wurde aber nicht angemeckert.

wisbo:
Wenn ich Werkzeuge anwähle, dauert es mehrere Sekunden, bis sich das Fenster öffnet.
Beim kompilieren von Programmen, die unter V1.05 problemlos laufen,
hagelt es Fehlermeldungen, die Libraries betreffend.

Ist die neue Version buggy oder bin ich zu doof?

Lass mich raten:
Du verwendest nicht nur originale Arduino-Libraries, die mit der Arduino-IDE mitgeliefert werden, sondern Du verwendest auch zusätzlich irgendwo im Internet gefundene, alte Drittanbieter-Libraries?

In dem Fall liegt es daran: Diese alten Drittanbieter-Libraries sind wohl noch nicht an die neue GCC-Compilerversion angepaßt worden und deshalb nicht zu Arduino-Versionen ab 1.5.7 oder höher kompatibel.

In dem Fall hast Du diese Möglichkeiten:

  1. Auf die alte Arduino-IDE zurück gehen. Unter Windows kannst Du beliebig viele Arduino-Versionen gleichzeitig parallel installiert haben.

  2. Dir neuere Versionen der Drittanbieter-Libraries besorgen, die kompatibel zu den neuesten Arduino-Versionen sind.

  3. Oder die alten Drittanbieter-Libraries selbst anpassen.

Hauptsächlich betrifft das wohl Konventionen zur Deklaration von PROGMEM Flash-Konstanten, bei denen sich einige Anforderungen geändert haben.

jurs:
Lass mich raten:
Du verwendest nicht nur originale Arduino-Libraries, die mit der Arduino-IDE mitgeliefert werden, sondern Du verwendest auch zusätzlich irgendwo im Internet gefundene, alte Drittanbieter-Libraries?

Ja.

In dem Fall hast Du diese Möglichkeiten:

  1. Auf die alte Arduino-IDE zurück gehen. Unter Windows kannst Du beliebig viele Arduino-Versionen gleichzeitig parallel installiert haben.

So wird es sein.
Ich werde den Teufel tun und gefühlte 100 Libraries anpassen/neu laden. Dafür ist mir meine Zeit zu schade.

Danke erstmal für die Hilfe.

Du brauchst auch keine 100 Libraries anpassen.

Die Fehler in deiner errrors.txt kommen von einer einzigen Datei:

Nur DateStrings.cpp ersetzen und schon sollte es gehen. Time.cpp vielleicht auch noch, aber sowie ich es in Erinnerung habe kam das nur von DateStrings. Ich hatte das in ein ein, zwei Minuten per Hand ausgebessert.

Die einzige andere Lib wo ich das hatte war UTFT. Die meisten anderen haben auch vorher PROGMEM Konstanten schon als const deklariert. Auch weil da oft das PGM_P Makro verwendet wird. Die größte Chance für Fehler tritt da bei Arrays aus String auf, und die kommen in Libraries eher selten vor.

Serenifly:
´Die Fehler in deiner errrors.txt kommen von einer einzigen Datei:

Ich kanns ja mal probieren.
Das nächste ist dann die die erwähnte Tm1637 und was kommt dann?
Was ist mit LCD, DHT22, BMP180, Virtuel Wire, und ,und und... ?

wisbo:
Ich kanns ja mal probieren.
Das nächste ist dann die die erwähnte Tm1637 und was kommt dann?
Was ist mit LCD, DHT22, BMP180, Virtuel Wire, und ,und und... ?

Ich hab' probiert: GitHub - PaulStoffregen/Time: Time library for Arduino installiert.

Die Fehlermeldungen bz. Time sind weg.
Dafür Säckeweise Fehler in der RTC.

Ich will garnicht ausprobieren, was passiert, wenn ich den Compiler auf meine Wetterstation loslasse:

Jede Menge Sensoren, Display, Ethernet, Sd-Card... , über 40K auf Mega2560.

Schluss, aus, Nase voll, weg mit dem Müll!

Warum nur muß ( nicht nur hier) bei jedem Update alles Mögliche umgekrempelt werden, bis zur völligen inkompatibilität ?? :stuck_out_tongue_closed_eyes:

wisbo:
Warum nur muß ( nicht nur hier) bei jedem Update alles mögliche umgekrempelt werden?? :stuck_out_tongue_closed_eyes:

Weil das alte nicht korrekt war und lediglich vom Compiler gedulded wurde. Aus diesem Grund nutze ich auch nur eigene Libarys. Da weiß man, wo das Problem ist, wenn es mal Compiler Meldungen hagelt.

Das Problem ist, dass der Compiler aus der 1.0.x sehr alt ist und dieser hätte schon deutlich früher ein Update erhalten sollen.

sschultewolter:
Das Problem ist, dass der Compiler aus der 1.0.x sehr alt ist und dieser hätte schon deutlich früher ein Update erhalten sollen.

Was hilft mir ein Update, das für mich unbrauchbar ist?
Ob ein Compiler alt, neu, schulbuchmässig korrekt oder sonstwas ist, ist mir Wumpe, er soll lauffähigen Code
erzeugen, und das tat der alte.

Dann bleib bei der alten Version mit den alten Libaries. Jedoch ist davon auszugehen, dass hier dann mehr oder weniger keine Fehler sowie auch keine Optimierungen mehr erfolgen werden. Ein anderer wirds dir nicht machen.