Я использую инструменты petalinux компании Xilinx для создания и использования встроенного linux. Моя главная машина для разработки - это виртуальная машина под управлением Ubuntu 14.04.1 LTS. Моя плата - Xilinx ZC706 с Xilinx Z7045 Zynq SoC.
При выполнении определенной команды (petalinux-boot --JTAG -- Whatever/option/I/use
) я получаю предупреждение, в котором говорится
rlwrap: $TERM is xterm but rlwrap can't find it in the terminfo database.
Expect some problems. Inappropriate IOCTL for device
Я достаточно погуглил и исследовал, чтобы понять, что rlwrap
- это обертка readline, которая просто обертывает команды. Я понимаю, что $TERM
- это переменная окружения, которая сообщает приложениям, с каким типом терминала (или, более конкретно, спецификации интерфейса терминала) они должны взаимодействовать, и что terminfo
- это база данных, которая содержит фактические спецификации интерфейса (/r /n цветной или нет, неважно).
Когда я запускаю ls /usr/share/terminfo/x
, там, вероятно, есть 20 или 30 вариантов xterm-XXXXX
или xtermX
, но нет файла с именем xterm
. В настоящее время я считаю, что это, вероятно, является причиной вышеуказанного предупреждения.
Когда я получаю вышеуказанное предупреждение, это происходит в процессе загрузки битового потока в FPGA-часть устройства или при использовании XMD (xilinx microprocessor debugger) для загрузки образа linux на сторону процессора. В этих процессах используется встроенный модуль JTAG, который подключен к моему хосту через USB-кабель.
Как получить/установить обычную запись xterm в базу данных terminfo?