Como posso corrigir o aviso "variável de ambiente TERM não definida" no eclipse

3

Estou executando o Ubuntu 12.04 LTS e trabalhando com eclipse (juno) em um projeto c ++. Eu continuo recebendo "variável de ambiente TERM não definida" no console ao tentar executar o programa. Eu percebo que isso significa que a variável precisa ser definida. Minha pergunta é o que deve ser definido e como configurá-lo?

Eu li que deveria ser 'xterm' em alguns lugares. Então eu adicionei

export TERM=xterm

no meu .profile e enquanto o eclipse parou de me dar o aviso, em vez disso, ele produziria lixo ilegível todo o tempo e depois (não um efeito colateral do programa). Ele exibiu a saída do programa, mas misturados eram personagens esquisitos. Isso me leva a acreditar que não é 'xterm' que eu deveria estar definindo TERM para. Ou estou configurando de forma incorreta.

Qualquer ajuda é apreciada.

Exemplo de saída:

**TERM environment variable not set.**


Please make a selection
-----------------------
1. Create a budget
2. Edit a budget
3. Display a budget
4. Save a budget
5. Load a budget
6. Exit

What is your selection: 1
**TERM environment variable not set.**
Enter the name of your budget: 

etc

O programa continua a executar como esperado, mas a mensagem é altamente irritante

  • Como alguém comentou, eu uso system ("clear"), que provavelmente é a fonte do aviso? De qualquer forma, é provável que isso seja apenas um problema de eclipse ou algo que eu possa consertar no Ubuntu / Linux
por Robert 14.09.2012 / 07:43

1 resposta

1

"Ele exibiu a saída do programa, mas misturados eram caracteres estranhos" Que tal postar a saída?

O problema pode ser que o Eclipse execute o programa não dentro de um terminal regular, mas em seu próprio console. Você tentou executar o programa a partir do terminal regular, fora do Eclipse?

Suspeito que o Eclipse executa o programa como se fosse um programa não interativo, em uma configuração não interativa, em que a variável TERM não é necessária. No entanto, pode ser que seu programa realmente use uma chamada de sistema (algo como system( "clear" ) ) que, de fato, requer a variável TERM para funcionar.

Infelizmente, nunca uso o Eclipse, por isso estou apenas supondo.

EDIT: Sim, é assim: system ("clear") requer um terminal, mas o Eclipse não fornece recursos de terminal para o seu programa. Solução:

(i) Execute o programa a partir da linha de comando em um terminal

(ii) Vá para as configurações do Eclipse e diga para iniciar o programa usando o gnome-terminal. Aparentemente, há uma descrição de como fazer aqui .

    
por January 14.09.2012 / 09:15

Tags