Error during compilation for NodeMCU (12.1E)
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 55/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- c
- Área
- embedded-iot
Línea de trabajo
Comienza con las fuentes de tinycbor de ArduinoIoTCloud mencionadas en el informe: cborpretty.c y cbortojson.c, especialmente las líneas indicadas que usan PRIx8, PRIu8, PRIu32 y PRIu64. Reproduce la compilación con el sketch generado en la placa NodeMCU 1.0 (ESP-12E) e inspecciona cómo están definidos estos macros de formato para ese compilador. Se considera terminado cuando el sketch de Arduino IoT Cloud compila sin los errores indicados.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I am working on ArduinoIoTColud project and I'm using the auto-generated script from the ArduinoIotCloud.
The following error occurred during the compilation.
Code
#include "arduino_secrets.h"
_/*
Sketch generated by the Arduino IoT Cloud Thing
https://create.arduino.cc/cloud/things/
Arduino IoT Cloud Variables description
The following variables are automatically generated and updated when changes are made to the Thing
CloudLight switch1;
CloudLight switch3;
CloudTemperatureSensor temp;
CloudLight switch2;
Variables which are marked as READ/WRITE in the Cloud Thing will also have functions
which are called when their values are changed from the Dashboard.
These functions are generated with the Thing and added at the end of this sketch.
*/
#include "thingProperties.h"
void setup() {
// Initialize serial and wait for port to open:
Serial.begin(9600);
// This delay gives the chance to wait for a Serial Monitor without blocking if none is found
delay(1500);
// Defined in thingProperties.h
initProperties();
// Connect to Arduino IoT Cloud
ArduinoCloud.begin(ArduinoIoTPreferredConnection);
/*
The following function allows you to obtain more information
related to the state of network and IoT Cloud connection and errors
the higher number the more granular information you’ll get.
The default is 0 (only errors).
Maximum is 4
*/
setDebugMessageLevel(2);
ArduinoCloud.printDebugInfo();
}
void loop() {
ArduinoCloud.update();
// Your code here
}
void onSwitch1Change() {
// Do something
}
void onSwitch2Change() {
// Do something
}
void onSwitch3Change() {
// Do something
}_
Error Details
Arduino: 1.8.15 (Windows 10), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c: In function 'hexDump':
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c:195:32: error: expected ')' before '__INT8'
195 | err = stream(out, "%02" PRIx8, *buffer++);
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c: In function 'utf8EscapedDump':
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c:251:39: error: expected ')' before '__INT32'
251 | err = stream(out, "\\u%04" PRIX32 "\\u%04" PRIX32,
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c:257:39: error: expected ')' before '__INT32'
257 | err = stream(out, "\\u%04" PRIX32, uc);
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c: In function 'value_to_pretty':
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c:382:34: error: expected ')' before '__INT64'
382 | err = stream(out, "%" PRIu64, val);
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c:387:39: error: expected ')' before '__INT64'
387 | err = stream(out, "-%" PRIu64, val);
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c:457:30: error: expected ')' before '__INT64'
457 | err = stream(out, "%" PRIu64 "%s(", tag, get_indicator(it, flags));
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c:473:37: error: expected ')' before '__INT8'
473 | err = stream(out, "simple(%" PRIu8 ")", simple_type);
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cborpretty.c:531:36: error: expected ')' before '__INT64'
531 | err = stream(out, "%s%" PRIu64 ".%s", val < 0 ? "-" : "", ival, suffix);
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cbortojson.c: In function 'add_value_metadata':
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cbortojson.c:297:39: error: expected ')' before '__INT64'
297 | if (fprintf(out, "\"tag\":\"%" PRIu64 "\"%s", status->lastTag,
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cbortojson.c:316:40: error: expected ')' before '__INT64'
316 | if (fprintf(out, ",\"v\":\"%c%" PRIx64 "\"", flags & NumberWasNegative ? '-' : '+',
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cbortojson.c: In function 'tagged_value_to_json':
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cbortojson.c:351:35: error: expected ')' before '__INT64'
351 | if (fprintf(out, "{\"tag%" PRIu64 "\":", tag) < 0)
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cbortojson.c:359:39: error: expected ')' before '__INT64'
359 | if (fprintf(out, ",\"tag%" PRIu64 "$cbor\":{", tag) < 0 ||
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cbortojson.c: In function 'value_to_json':
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cbortojson.c:578:38: error: expected ')' before '__INT8'
578 | if (fprintf(out, "\"simple(%" PRIu8 ")\"", simple_type) < 0)
| ^
| )
C:\Users\xxx\Documents\Arduino\libraries\ArduinoIoTCloud\src\cbor\lib\tinycbor\src\cbortojson.c:637:39: error: expected ')' before '__INT64'
637 | r = fprintf(out, "%s%" PRIu64, val < 0 ? "-" : "", ival);
| ^
| )
exit status 1
Error compiling for board NodeMCU 1.0 (ESP-12E Module).
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
- Lenguaje dominante
- C
- Estrellas
- 634
- Forks
- 222
- Merge medio
- 1 d 25 min
- PR fusionados (30 d)
- 2
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de intel/tinycbor
-
CborValidateTagUse rejects valid tag 1 (epoch) with a floating-point value, and restricts tags 21-23 too muchPosiblemente ocupada @thiagomacieira la tomó hace 10 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
CBOR validation not worksAbierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
Todos los issues de intel/tinycbor
Issues similares
-
docs: AGENTS.md has no rule against running deploy scripts into the owner's game installPosiblemente ocupada @thesprockee la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
EchoTools/nevr-runtime#524 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
-
type: feature
Dificultad 1/5 Menos de una hora Aptitud para principiantes 77/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
FujiNetWIFI/fujinet-firmware#1932 ·
Los mantenedores suelen responder en 1 día