端末を開くときにエラーが発生しました: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

または、別のコンピュータのターミナルデータベースと一緒にディレクトリツリーをコピーします。

追加資料:

おすすめ記事