HOWTO · Arduino

Corrigir o status de saída 1 do Arduino lendo o erro real

O status de saída 1 é um resultado genérico de falha: leia o diagnóstico anterior e separe erros de compilação e upload.

Nesta página

exit status 1 é o resultado genérico de uma falha, não o diagnóstico. Leia a primeira linha acima que contém arquivo e número da linha. Se a compilação funcionar e apenas o upload falhar, verifique placa, porta e bootloader em vez de mudar código que funciona.

Encontre a mensagem útil

Compilation error: exit status 1 e ld returned 1 exit status encerram o relatório. A causa aparece antes: por exemplo, expected ';', was not declared in this scope ou No such file or directory. Ao pedir ajuda, copie toda a saída. O guia de compilação do Arduino explica como interpretar esses diagnósticos.

Verifique um sketch mínimo

Este sketch exato foi compilado com Arduino CLI 1.5.1, Arduino AVR Boards 1.8.8 e arduino:avr:uno:

void setup() {}

void loop() {}

Para uma Uno, execute arduino-cli compile --fqbn arduino:avr:uno <pasta-do-sketch>; troque o FQBN para outra placa. Se este sketch também falhar, escolha a placa correta e instale sua plataforma no gerenciador de placas antes de investigar a sintaxe do projeto.

Corrija o erro informado

Este sketch testado falha porque falta o ponto e vírgula depois de Serial.begin(9600):

void setup() {
  Serial.begin(9600)
}

void loop() {}

O resultado observado foi error: expected ';' before '}' token, seguido de Error during build: exit status 1. Adicione o ponto e vírgula e compile novamente. Verifique também chaves, grafia dos identificadores e escopo das variáveis; a linha indicada pode estar logo após o erro real.

Para fatal error: SomeLibrary.h: No such file or directory, confirme o nome do cabeçalho e instale a biblioteca correta e compatível em Sketch > Include Library > Manage Libraries. Copiar um único .h para perto do sketch não instala dependências nem garante suporte à placa.

Trate falhas de upload separadamente

Se Verificar funcionar mas o upload terminar em status 1, não é um erro de sintaxe. Confirme placa e porta, feche monitores seriais que usam essa porta, reconecte a placa e examine opções de processador ou bootloader se aplicável. Consulte o guia de upload do Arduino. Um sketch compilado não consegue testar upload sem placa física e porta serial.