HOWTO · Arduino
Solucionar el estado de salida 1 de Arduino leyendo el error real
El estado de salida 1 es un resultado genérico de fallo. Lea el diagnóstico anterior, corrija errores de compilación y separe los problemas de carga.
En esta página
exit status 1 es el resultado genérico de un fallo, no su causa. Lea la primera línea anterior con archivo y número de línea. Si la compilación termina bien y falla la carga, compruebe placa, puerto y bootloader en vez de modificar código que ya funciona.
Localice el diagnóstico real
Las líneas Compilation error: exit status 1 y ld returned 1 exit status cierran el informe; el dato útil aparece antes. Busque mensajes como expected ';', was not declared in this scope o No such file or directory, y copie la salida completa al pedir ayuda. La guía de compilación de Arduino explica cómo leerlos.
Compruebe primero un sketch mínimo
Este sketch exacto se compiló con Arduino CLI 1.5.1, Arduino AVR Boards 1.8.8 y arduino:avr:uno:
void setup() {}
void loop() {}
Para un Uno, ejecute arduino-cli compile --fqbn arduino:avr:uno <carpeta-del-sketch>; sustituya el FQBN por el de su placa. Si también falla, seleccione la placa correcta e instale su plataforma desde el gestor de placas antes de culpar al proyecto.
Corrija el error indicado
Este sketch probado falla porque falta el punto y coma después de Serial.begin(9600):
void setup() {
Serial.begin(9600)
}
void loop() {}
El resultado observado fue error: expected ';' before '}' token, seguido de Error during build: exit status 1. Añada el punto y coma y vuelva a compilar. Revise también llaves, ortografía de identificadores y ámbito de variables: la línea indicada puede quedar justo después del error original.
Ante fatal error: SomeLibrary.h: No such file or directory, verifique el nombre del encabezado y la documentación de la biblioteca, e instale la biblioteca correcta desde Sketch > Include Library > Manage Libraries. No copie un .h aislado junto al sketch: pueden faltar dependencias o compatibilidad con la placa.
Separe los fallos de carga
Si Verificar funciona pero cargar acaba en estado 1, no es un problema de sintaxis. Confirme placa y puerto, cierre monitores serie que usen el puerto, reconecte la placa y revise las opciones de procesador o bootloader. Consulte la guía de carga de Arduino. La carga necesita hardware y puerto serie; no se puede probar con un sketch de compilación aislado.