Mehrere .ino Dateien in einem Sketch und Kompilieren und Fehlermeldungen

Ich verstehe nicht , was Du da tatsächlich machst. Wenn ich das so mache, dann öffnet die IDE einfach alle ino's in Tabs - wie es sein soll.
Fony hat mich noch auf einen Hinweis gebracht: Entpackst Du die zip wirklich, oder gehst Du da nur im Explorer mit Doppelklick rein? Das ist nämlich KEIN Entpacken.

Ok einmal noch. Aber nur noch Copypaste

So ist es, wie ich mehrmals ja schrieb. Egal auf welche INO ich klicke, die anderen werden automatisch ebenfalls geöffnet.

Tut sie aber. Über zahlreiche Fehler beim kompilieren, es gibt zahlreiche Fehlermeldungen wie "...not declared in sthis scope". Als ich zwecks weiterer Fehlersuche dann diese Fehlermeldung goggelte bin ich auf sehr viele Beiträge auf diversen Plattformen gestossen in denen es genau um so einen Fehler ging und darum das das mehrere INO-Dateien in einem Ordner sind.

Blablabla... ich hab das jetzt drölfzigmal wiederholt.

Wie nicht ?


na ja wen man Festplatten platz sparen will wegen 8Bytes dann ist das kein wunder.
Habe den Ersten besten Ordner genommen um das zeigen.
Sag mall du hast wohl möglich nur den Inhalt der ino ras kopiert und in der IDE eingefügt?

???
Ja sieh doch hin.
Ich habe die Ordnerstruktur nicht mit den gleichnamigen Ordner. Wenn du hinschaust siehst du es.
Es befindet sich alles im Ordner "data". Und darin sind direkt die einzelnen INO.
Deswegen musste ich die Ordner erst erstellen, was die IDE für mich gemacht hat als ich die INO anklickte die ich brauchte.

Ich schrieb ja das ich die anderen INO dann ebenfalls in diesen ORdner kopierte weil ich vermutete das die ja zusammengehören. Und die werden immer alle zusammen geöffnet.

Zwecks Fehlersuche habe ich das dann anschliessend natürlich auch mal ausprobiert.
Was mich natürlich nicht wirklich weiterbrachte.

Daher kopierte ich eine der zahlreichen Fehlermeldungen "....not declared in this scope" und suchte bei google. Da stiess ich dann auf viele Beiträge in vielen Plattformen wo es ebenfalls um diesen Fehler ging und ein Zusammenhang damit vermutet wurde das mehrere INO in einem Ordner sind.
Dort habe ich übrigens auch erfahren das manchmal mehrere INO zu einem Sketch gehören und dann gemeinsam kompiliert werden.
Leider endeten diese Beiträge auf den vielen verschiedenen Plattformen und Foren immer Ergebnislos und nicht erfolgreich.
Das schrieb ich weiter oben ja auch mal.

Ja und jetzt sind wir alle hier und erzählen uns gegenseitig das die Datei xyz in einem gleichnamigen Ordner xyz sein muss und das dies von Anfang an schon der Fall ist.

Die Fehlermeldung "....not declared in this scope" bleibt weiter geheimnisvoll.
Ich dachte halt diese Fehlermeldung muss bekannt sein wenn es dazu so viele Beiträge bei google über diese Fehlermeldung gibt.

Mein Fehler, sorry. Ich werd schon noch was rausfinden.

Ordner Data ist für den ESP :wink: der soll auf den ESP drauf mit Data Upload in Separaten Speicherbereich, und hat nix direkt mit der .ino zu tun.
Den Bereich wo der data Ordner kommen soll macht das Upload Programm selber
habe geraden nachgeschaut es ist eine html ( index.htm) Seite :wink:

Dan zeige doch dein Sketsch !
Nur schreiben geht nicht bringts nichts.

Wer soll wo hinschauen? Im Ordner 'data' befindet sich nur eine html-Datei. Der Ordner data befindet sich parallel zu den .ino's im Ordner DuinoCoin_Esp_Async_Master

Deshalb jetzt nochmal die Frage: Wie entpackst Du die .zip-Date? Einfach ein Doppelklick auf die .zip zeigt dir zwar den Inhalt und Du kannst darin navigieren. Aber entpackt wird die Datei so nicht.

[Edit]

Die Ordnerstruktur in der zip-Datei ist korrekt. Wenn Du sie richtig entpackst kommt das korrekt auf deine Festplatte - da darfst und musst Du nichts mehr dran ändern oder hin- und herschieben.

Welchen Scheiss Fehler denn?

Ich hab jetzt versucht das Ding zu kompilieren - macht er auch.
Das Problem ist, das die Ristriktionen schärfer sind.
Da kommt dann sowas bei raus:

Arduino: 1.8.19 (Linux), Board: "ESP32 Dev Module, Disabled, Disabled, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 240MHz (WiFi/BT), QIO, 80MHz, 4MB (32Mb), 921600, Core 1, Core 1, None, Disabled"

Sketch wird kompiliert...

/home/user1/arduino-1.8.19/portable/sketchbook/DuinoCoin_Esp_Async_Master/DuinoCoin_Esp_Async_Master.ino: In function 'void SetupWifi()':
DuinoCoin_Esp_Async_Master:68:15: error: comparison with string literal results in unspecified behavior [-Werror=address]
   if (ssid == "")
               ^~
/home/user1/arduino-1.8.19/portable/sketchbook/DuinoCoin_Esp_Async_Master/DuinoCoin_Esp_Async_Master.ino: In function 'void SetupOTA()':
DuinoCoin_Esp_Async_Master:109:21: error: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'uint64_t' {aka 'long long unsigned int'} [-Werror=format=]
   sprintf(hostname, "Miner32-Async-%06x", ESP.getEfuseMac());
                     ^~~~~~~~~~~~~~~~~~~~  ~~~~~~~~~~~~~~~~~
/home/user1/arduino-1.8.19/portable/sketchbook/DuinoCoin_Esp_Async_Master/DuinoCoin_Esp_Async_Master.ino: At global scope:
DuinoCoin_Esp_Async_Master:118:41: error: 'LED_BUILTIN' was not declared in this scope
 void blink(uint8_t count, uint8_t pin = LED_BUILTIN) {
                                         ^~~~~~~~~~~
/home/user1/arduino-1.8.19/portable/sketchbook/DuinoCoin_Esp_Async_Master/DuinoCoin_Esp_Async_Master.ino: In function 'void setup()':
DuinoCoin_Esp_Async_Master:139:13: error: 'LED_BUILTIN' was not declared in this scope
     pinMode(LED_BUILTIN, OUTPUT);
             ^~~~~~~~~~~
/home/user1/arduino-1.8.19/portable/sketchbook/DuinoCoin_Esp_Async_Master/DoinoCoin_AsyncWebServer.ino: In function 'void onWsEvent(AsyncWebSocket*, AsyncWebSocketClient*, AwsEventType, void*, uint8_t*, size_t)':
DoinoCoin_AsyncWebServer:106:19: error: format '%u' expects a matching 'unsigned int' argument [-Werror=format=]
     Serial.printf("ws[%s][%u] disconnect: %u\n", server->url(), client->id());
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/user1/arduino-1.8.19/portable/sketchbook/DuinoCoin_Esp_Async_Master/DuinoCoin_Clients.ino: In function 'void clients_waitFeedbackJobDone(byte)':
DuinoCoin_Clients:438:19: error: unused variable 'time' [-Werror=unused-variable]
     unsigned long time = (millis() - clientsTimes[i]);
                   ^~~~
DuinoCoin_Clients:441:9: error: unused variable 'Shares' [-Werror=unused-variable]
     int Shares = clientsShares[i];
         ^~~~~~
cc1plus: some warnings being treated as errors
Mehrere Bibliotheken wurden für "WiFi.h" gefunden
 Benutzt: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/WiFi
 Nicht benutzt: /home/user1/arduino-1.8.19/libraries/WiFi
Bibliothek ESPmDNS in Version 2.0.0 im Ordner: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/ESPmDNS  wird verwendet
Bibliothek WiFi in Version 2.0.0 im Ordner: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/WiFi  wird verwendet
Bibliothek ArduinoOTA in Version 2.0.0 im Ordner: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/ArduinoOTA  wird verwendet
Bibliothek Update in Version 2.0.0 im Ordner: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/Update  wird verwendet
Bibliothek AsyncTCP-master in Version 1.1.1 im Ordner: /home/user1/arduino-1.8.19/portable/sketchbook/libraries/AsyncTCP-master  wird verwendet
Bibliothek SPIFFS in Version 2.0.0 im Ordner: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/SPIFFS  wird verwendet
Bibliothek FS in Version 2.0.0 im Ordner: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/FS  wird verwendet
Bibliothek ESPAsyncWebServer-master in Version 1.2.3 im Ordner: /home/user1/arduino-1.8.19/portable/sketchbook/libraries/ESPAsyncWebServer-master  wird verwendet
Bibliothek HTTPClient in Version 2.0.0 im Ordner: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/HTTPClient  wird verwendet
Bibliothek WiFiClientSecure in Version 2.0.0 im Ordner: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/WiFiClientSecure  wird verwendet
Bibliothek ArduinoJson-6.x in Version 6.21.3 im Ordner: /home/user1/arduino-1.8.19/portable/sketchbook/libraries/ArduinoJson-6.x  wird verwendet
Bibliothek Wire in Version 2.0.0 im Ordner: /home/user1/arduino-1.8.19/hardware/expressif/esp32/libraries/Wire  wird verwendet
exit status 1
comparison with string literal results in unspecified behavior [-Werror=address]

Also da steht alles!
LED_BUILTIN gibts nicht, weil ein falsches Board ausgewählt wurde - Du brauchst eines, auf dem die LED auch definiert ist.

UNUSED-VARIABLES sind Warnungen, keine Fehler.
Und das mit den falschen Formaten zieht sich durch alles durch.

TIPP:
Wenn Du soviel Zeit und Energie hast, rumzumotzen a la blabla, geh zu github und beschwer Dich da.
Wenn Du Hilfe willst, kannst Du sie bekommen.
Aber wegen eigener unzureichender Fähigkeiten (hier echte Meldungen zu liefern, und zu sagen, auf was Du das kompilierst) andere anzupissen, geht eindeutig zu weit.

(Hinweis am Rande: Ich brauche um bis dahin zu kommen 4 Minuten zum kompilieren und die Forensoftware streikt wenn man versucht die komplette Kompilierausgabe einzuspeisen. Das hat mich jetzt EINE STUNDE gekostet.

Das war dann aber auch die letzte Sekunde - mehr gibts nicht, nach deinem Spruch.
Tach auch.

1 Like

Wenn die IDE rumzügt wegen Warnungen wir die IDE auf Standard gestellt danach geschaut genauer

Schön das ich jetzt zuhause bin udn es ausprobieren konnte.
Der Hinweis mit der Board-LED war gut. Ich habe es probeweise umgestellt auf ein Generic Board und damit gehts.

Danke

Ich habe nicht rumgemotzt, ich hatte nur keine Lust es zum 8732598 mal erneut zu wiederholen das die Datei sich in einem gleichnamigen Ordner befindet.

Du bist der erste der auf den Fehler eingegangen ist um den es in meinem allerersten Beitrag ging und um den es die ganze Zeit ging.

Ich war extrem geduldig und habe immer wieder auf denselben Hinweis geantwortet das ich dies bereits mehrfach beantwortet habe und dennoch habe ich es geduldig und höflich wiederholt.

Was du als "anpissen" verstehst weiss ich nicht.

Selbstverständlich habe ich das auf einem anderen Notebook gemacht und wiederholt um Fehler auf dieser Basis auszuschliessen.

Wenn ich eine Frage stelle dann stelle ich die wenn ich alle grundsätzlichen Dinger schon ausgeschlossen habe. Wie ich mehrfach schrieb habe ich vorher bereits intensiv gesucht.

Ja hab ich grad verwechselt, ich bin unterwegs und schreib vom Handy die ganze Zeit.
Ich bin grad erst nach Hause gekommen und konnte gleich passend dazu den Hinweis von my_xy_projekt verwerten.
Das Problem ist gelöst.

Jetzt weiss ich was du meinst.

Das war nicht an jemand als Person gerichtet.
Das blablabla steht für den Text den ich vorher bereits schrieb und den ich nicht wieder erneut dorthinschreiben wollte.

Wenn du was mitteilst wiederholste ja auch nicht drölfmal deine Lebensgeschichte sondern "Als die Meteoriten sich in der Gaswolke verklumpten... blablabla... jetzt ist Sylvester"

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.