打开终端时出错:vt102

打开终端时出错:vt102

当我尝试在 Linux 机器上打开对话框二进制文件时,出现以下错误:Error opening terminal: vt102

我为 ARM 交叉编译了对话框和 ncurses,编译顺利,但二进制打开给了我一个错误。给出错误的命令是:

$DIALOG --clear --backtitle "Accept EULA to proceed" --title "END USER LICENSE AGREEMENT" --no-mouse --no-lines --extra-button --ok-label 'Accept' --extra-label 'Decline' "$@" --textbox /vss/scripts/End-User-Product-License-Agmt.txt 0 0

答案1

该消息表示 ncurses 无法找到 的终端描述vt102。这可能会发生,因为

  • 终端数据库的默认编译路径名与安装终端数据库的位置不匹配,或者
  • 您没有安装终端数据库。

这两个(可能)都很容易在交叉编译中完成。当您运行配置脚本时,它会在末尾打印重要的路径名,因为这些路径名都可以自定义。例如:

** Configuration summary for NCURSES 6.0 20170909:

       extended funcs: yes
       xterm terminfo: xterm-new

        bin directory: /usr/bin
        lib directory: /usr/lib
    include directory: /usr/include/ncursesw6
        man directory: /usr/share/man
   terminfo directory: /usr/local/ncurses/share/terminfo
 pkg-config directory: /usr/lib/x86_64-linux-gnu/pkgconfig

如果您在运行时不覆盖终端数据库的路径名(使用TERMINFO和/或TERMINFO_DIRS),它使用编译的路径名。

要安装终端数据库,您可以使用tic,例如,

tic -x terminfo.src

或从另一台计算机复制带有终端数据库的目录树。

进一步阅读:

相关内容