Difference between revisions of "Applications/Ncurses"
From HPC
m |
m (→Further Information) |
||
(5 intermediate revisions by the same user not shown) | |||
Line 10: | Line 10: | ||
===Libraries provided=== | ===Libraries provided=== | ||
− | Ncurses provides the following sub libraries for use within the library: | + | Ncurses provides the following sub-libraries for use within the library: |
* Curses library | * Curses library | ||
Line 29: | Line 29: | ||
==Further Information== | ==Further Information== | ||
− | * | + | * [https://www.gnu.org/software/ncurses/ https://www.gnu.org/software/ncurses/] |
* [http://invisible-island.net/ncurses/ http://invisible-island.net/ncurses/] | * [http://invisible-island.net/ncurses/ http://invisible-island.net/ncurses/] | ||
+ | |||
+ | {{Librariespagenav}} |
Latest revision as of 11:07, 16 November 2022
Contents
Application Details
- Description: ncurses (new curses) is a programming library providing an application programming interface (API) that allows the programmer to write text-based user interfaces in a terminal-independent manner. It is a toolkit for developing "GUI-like" application software that runs under a terminal emulator. It also optimizes screen changes, in order to reduce the latency experienced when using remote shells.
- Version: 6.0
- Modules: ncurse/6.0
- Licence: GNU
Usage Examples
Libraries provided
Ncurses provides the following sub-libraries for use within the library:
- Curses library
- Panel library
- Form library
- Menu library
Compiling Programs
In order to use the library, it is necessary to have certain types and variables defined. Therefore, the programmer must have a line:
#include <curses.h>
at the top of the program source. The screen package uses the Standard I/O library, so <curses.h> includes <stdio.h>. <curses.h> also includes <termios.h>, <termio.h>, or <sgtty.h> depending on your system. It is redundant (but harmless) for the programmer to do these includes, too. In linking with curses you need to have -lncurses in your LDFLAGS or on the command line. There is no need for any other libraries.