comando exec do nodejs falhando sem mensagem de erro útil
Este é o código para executar
cp.exec("cc -Wall /tmp/test.c -o /tmp/test", function(e, stdout, stderr) {
if (e) {
var errorstr = "Compilation failed with the following error<br>"+ e.message.toString()
client.send(errorstr)
console.log(e, stdout, stderr)
ee.prototype.removeAllListeners()
} else if (stderr.length > 0) {
client.send("Compilion finished with warnings\n"+ stderr + '\n')
client.send('compiled')
ee.prototype.emit('compiled')
} else {
client.send("Compilation successful")
ee.prototype.emit('compiled')
}
})
'client' é o argumento do argumento de callback do socket.io. 'ee' é uma instância do EventEmitter
Chegando ao problema. Ao executar o código, o retorno de chamada diz que o comando não foi bem-sucedido. console.log (e, stdout, stderr) é
{ [Error: Command failed: ] killed: false, code: false, signal: undefined } '' ''
/tmp/test.c é um código C válido e ao verificar o diretório / tmp, eu acho que o test.c é apropriado e o 'teste' binárioé sendo gerado e em execução em um shell, é executado corretamente. Então eu não entendo porque está sinalizando uma execução malsucedida. As informações do objeto de erro também são inúteis. Gostaria de receber alguma ajuda / explicação