Как я могу исправить предупреждение "переменная окружения 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-терминала. Видимо, здесь есть описание, как это сделать.