Problém:
Při pokusu o kompilaci vašeho Arduino nebo PlatformIO projektu, vidíte chybové hlášení jako
linker_error_ld.txt
/home/uli/.platformio/packages/toolchain-xtensa-esp32@8.4.0+2021r2-patch5/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: .pio/build/esp32dev/libFrameworkArduino.a(main.cpp.o):(.literal._Z8loopTaskPv+0x8): undefined reference to `loop()'Řešení
Nedeklarovali jste funkci loop() ve vašem zdrojovém kódu. Otevřete main.cpp nebo váš .ino zdrojový kód soubor a začněte s následující (prázdnou) loop() funkcí, která nedělá nic:
empty_loop_example.cpp
void loop() {
// Nothing to do here since HTTPServer
// is running in a separate thread
delay(1000);
}Po tom, co jste přidali jakoukoliv void loop() { /* ... */} funkci do vašeho zdrojového kódu, zkuste znovu sestavit/nahrát a chybové hlášení by mělo zmizet.
Pokud chcete, můžete také přidat kód jako tisk zprávy na sériový port při každém běhu loop:
loop_with_serial_example.cpp
void loop() {
// Nothing to do here since HTTPServer
// is running in a separate thread
Serial.println("Hello world!");
delay(1000);
}
Podívejte se na podobné články podle kategorie:
Arduino C/C++ PlatformIO
Pokud vám tento článek pomohl, zvažte, zda mi nekoupíte kávu nebo nepřispějete přes PayPal na podporu výzkumu a publikování nových článků na TechOverflow