GNU Ncurses is a programming library that allows the users to write text-based user interfaces(TUI). Many text-based games have been created using this library. One popular example is PacVim, a CLI game to learn VIM commands. In this brief tutorial, we will be discussing how to install Ncurses library in Linux and Unix-like operating systems.
Install Ncurses In Linux
Ncurses is available in the default repositories of most Linux distributions. For instance, you can install it on Arch-based systems using the following command:
$ sudo pacman -S ncurses
On Fedora, RHEL, CentOS, AlmaLinux, Rocky Linux:
$ sudo yum install ncurses-devel
Or,
$ sudo dnf install ncurses-devel
On Debian, Ubuntu, Linux Mint, Pop OS:
$ sudo apt install libncurses5-dev libncursesw5-dev
Install Ncurses From Source
The GNU ncurses might be bit old in the default repositories. If you want a most recent stable version, you can compile and install from the source as shown below.
Download the latest ncurses version from here. As of writing this guide, the latest version was 6.1.
$ wget https://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.1.tar.gz
Extract the tar file:
$ tar xzf ncurses-6.1.tar.gz
This will create a folder named ncurses-6.1 in the current directory. Cd to the directory:
$ cd ncurses-6.1
$ ./configure --prefix=/opt/ncurses
Finally, compile and install using the following commands:
$ make
$ sudo make install
Verify the installation using command:
$ ls -la /opt/ncurses
That's it. Ncurses have been installed on the Linux distribution. Go ahead and create your nice looking TUIs using Ncurses.
3 comments
Hi.
Thanks for this tutorial, I was able to install ncurses as suggested.
But now I experience a problem when I try to compile calcurse.
Configure says:
checking for initscr… no
checking for initscr in -lncursesw… no
checking for initscr in -lncurses… no
configure: error: Either ncurses or ncursesw library is required to build calcurse!
I tried it with
./configure –includedir=/opt/ncurses/bin
But had no success.
Maybe you can give me a hint how to handle this?
I don’t have any solution right now. My apologies. But why are you compiling it from source? Calcurse is available in the official repositories of most Linux distributions. https://calcurse.org/downloads/
@Edgar Hoffmann,
Use:
./configure –with-local-dir=/opt/ncurses
I used ” ./configure –help ” to find this command. This helped my installation of Vim.