The goal is not to produce a star software but to get back in shape programming with C after years of Perl and Python and learning about ncurses along the way.
A few words about ncurses
ncurses is a C library allowing you to abstract the terminal type while writing ASCII graphical interface. It is used in the Linux kernel menuconfig utility for example.
More information about ncurses can be found on the GNU ncurses page and its wikipedia article.
Setting up the environment
I will start with a Hello World program inspired directly from the Linux documentation project.
#include <stdlib.h> #include <curses> int main(void) { initscr(); printw("Hi!\n"); refresh(); getch(); endwin(); exit(0); }
Your Linux distribution should come with ncurses already installed. If it is not there, follow the nstructions found in paragraph "1.3. Where to get it" of the tldp ncurses how-to webpage.
I am using the Kepler version of Eclipse. First navigate through the top menu commands:
File > New > C project
Then give your project a name (mine is curses), project type = "empty project", toolchains = "Linux GCC" (for building an executable for your dev machine).
Copy-paste or type the Hello World program above in main.c file for example.
3. Adding the ncurses library to the ld path
Right-click on your project name from the project explorer window and select the bottom option for Properties.
In "C/C++ General" section, select "Paths and Symbols" then click on the "Libraries" tab.
Add ncurses to the list. End result should look as shown below:
Adding the ncurses library to your project |
4. Building your project
Nothing tricky here: Right-click on your project name then "Build Project" or use the hammer icon from the top menu. Build result, as well as gcc command line, will be displayed in a console:
Project has been built |
5. Launching a terminal from Eclipse
To avoid switching back and forth between Eclipse and your terminal, I have used a trick found on stack Overflow: from the top menu, select Run > External Tools > External Tools Configuration...
Create a new configuration (here: Command_prompt) with the location of your terminal binary, the directory where your executable is and additional arguments for your terminal program to execute your program:
Adding external tool configuration for your terminal |
To launch your program, Run > External Tools > Command_prompt (or the name you gave your configuration) and a terminal window should appear with your ncurses program running.
Run Command_prompt opens a new terminal with your program |
That's it. You are now set to explore ncurses tutorials that you can find on the web!