インストール: ncurses | 端末操作の基本ライブラリー
端末に依存しないテキストユーザーインターフェイス (TUI) のAPIを提供するncurses (new curses) をソースコードからインストールする。
ncursesは端末操作の実装に使われており,MariaDB, Vim, Emac, GNU screen, tmuxなどの多くのライブラリーに利用されている。
項目 | 説明 |
---|---|
配布元 | |
リポジトリー | |
手順 | |
依存情報 | |
依存先 (必須) |
|
依存先 (任意) | |
依存元 |
|
日付 | バージョン | OS | 依存関係 |
---|---|---|---|
2018-06-20 | 6.1 | Ubuntu 16.04 | |
2019-05-02 | 6.1 | Ubuntu 18.04 | GNU Make 4.2.1, GCC 7.4.0 |
2020-08-07 | 6.2 | Ubuntu 20.04 | GNU Make 4.2.1, GCC 9.3.0 |
デフォルトでは共有ライブラリー (.so) をビルドしないので,./configure
のオプションに--with-shared
を指定した。
また,make
を実行するとtest/
配下のいくつかのテストプログラムも自動的にビルドされる。ncursesのテストはtest配下のプログラムを手動で実行することで行うようだ。ただし,正解がよくわからないので飛ばした。
configure
に--with-termlib
オプションを指定している。このオプションを指定しない場合,Terminfo (libtinfo.so
) がlibncurses.so
にマージされている。多くの場合はこれでも問題ないのだが,このままだとlibtinfo.so
を直接使うプログラムに対応できない。--with-termlib
を指定すると,libncurses.so
に取り込まれていたlibtinfo.so
が別のファイルとして分離される。
ほぼGNU Readlineで発生した問題のための対応となる。詳細は「libreadline.so.8: undefined symbol: UPの対処方法」を参照する。
ncursesのインストールが完了したらTERMINFO
環境変数を以下のように設定しておく。この環境変数を指定しておかないと,ncursesの利用プログラムでterminfoの情報を認識できず,警告がでることがある。
export TERMINFO="$LOCAL/share/terminfo"
マニュアル (ncurses 3x) にある通り,この環境変数でローカルの端末定義の検索先を指定できる。最初にこの環境変数で指定した場所を探し,なければシステムの定義場所 (/usr/share/terminfo
) を検索する。
PATH
環境変数などと異なり,:
で区切って複数指定することはできないようなので注意する。この環境変数の設定が「E437: terminal capability “cm” requiredの対処方法」の問題の解決に必須となる。
“インストール: ncurses | 端末操作の基本ライブラリー” に対して3件のコメントがあります。