Isso makefile
irá gerar a mensagem de erro 'separador ausente':
all
@echo NDK_PROJECT_PATH=$(NDK_PROJECT_PATH)
done:
@echo "All done"
Há uma guia antes do @echo "All done"
(embora a done:
regra e a ação sejam amplamente supérfluas), mas não antes do @echo PATH=$(PATH)
.
O problema é que a linha de partida all
deve ter dois pontos :
ou igual =
para indicar que é uma linha de destino ou uma linha de macro e não possui nenhuma, portanto o separador está ausente.
A ação que ecoa o valor de uma variável deve estar associada a um destino, possivelmente um destino fictício ou PHONEY. E essa linha de destino deve ter dois pontos nela. Se você adicionar um :
depois all
no exemplomakefile
e substituir os espaços em branco à esquerda na próxima linha por uma guia, ele funcionará de maneira saudável.
Você provavelmente tem um problema análogo próximo à linha 102 no original makefile
. Se você mostrasse cinco linhas sem comentários e sem comentários antes das operações de eco que estão falhando, provavelmente seria possível concluir o diagnóstico. No entanto, como a pergunta foi feita em maio de 2013, é improvável que o problema makefile
ainda esteja disponível agora (agosto de 2014), portanto, essa resposta não pode ser validada formalmente. Só pode ser usado para ilustrar uma maneira plausível pela qual o problema ocorreu.