Как я могу исправить предупреждение "переменная окружения TERM не установлена" в eclipse

Я использую Ubuntu 12.04 LTS и работаю с eclipse (juno) над проектом C++. Я продолжаю получать "переменная окружения TERM не установлена" в консоли, пытаясь запустить программу. Я понимаю, что это означает, что переменная должна быть установлена. У меня вопрос, что он должен быть установлен и как мне его установить?

Я читал, что это должно быть 'xterm' в нескольких местах. Итак, я добавил

export TERM=xterm

в моем.profile, и хотя eclipse перестал выдавать мне предупреждение, вместо этого он будет выводить нечитаемый мусор, а потом (не побочный эффект программы). Он отображал вывод программы, но смешанные были странные символы. Это заставляет меня поверить, что это не "xterm", я должен установить TERM. Или я настраиваю это неправильно.

Любая помощь приветствуется.

Образец вывода:

**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: 

так далее

Программа продолжает выполняться, как и ожидалось, но сообщение очень раздражает

  • Как кто-то прокомментировал, я использую систему ("очистить"), которая, вероятно, является источником предупреждения? В любом случае, это скорее всего проблема затмения или что-то, что я могу исправить в Ubuntu/ Linux?

1 ответ

"Он отображал вывод программы, но смешанные были странные символы" Как насчет публикации вывода?

Проблема может заключаться в том, что Eclipse запускает программу не внутри обычного терминала, а в собственной консоли. Вы пытались запустить программу с обычного терминала, вне Eclipse?

Я подозреваю, что Eclipse запускает программу, как если бы это была неинтерактивная программа, в неинтерактивной настройке, где переменная TERM не нужна. Однако может случиться так, что ваша программа на самом деле использует системный вызов (что-то вроде system( "clear" )) что на самом деле требуется переменная TERM для работы.

К сожалению, я никогда не использую Eclipse, поэтому я просто догадываюсь.

РЕДАКТИРОВАТЬ: Да, это так: система ( "очистить") требует терминала, но Eclipse не предоставляет возможности терминала для вашей программы. Решение:

(i) Запустите программу из командной строки в терминале

(ii) Перейдите в настройки Eclipse и скажите, чтобы он запускал программу с помощью gnome-терминала. Видимо, здесь есть описание, как это сделать.

Другие вопросы по тегам