Graphics.h in Linux for c/c++

graphics.h is a header file that is used to add graphics in c/c++ program in TURBOC. But in Ubuntu graphics.h file is not supported by g ++ compiler.

For executing graphics program in g++ compiler, we have to install library files.

Steps for installing the graphics library files are as follows:

First run $ sudo apt-get install build-essential in terminal to install necessary compiler tools.

Then, install the following packages:
libsdl-image1.2
libsdl-image1.2-dev
guile-1.8
guile-1.8-dev
libsdl1.2debian-art
libartsc0-dev
libaudiofile-dev
libesd0-dev
libdirectfb-dev
libdirectfb-extra
libfreetype6-dev
libxext-dev
x11proto-xext-dev
libfreetype6(upgrade)
libaa1
libaa1-dev
libslang2-dev
libasound2
libasound2-dev

You can install them by typing the following command in the terminal :
$ sudo apt-get install libsdl-image1.2 libsdl-image1.2-dev guile-1.8 guile-1.8-dev libsdl1.2debian-arts libartsc0-dev libaudiofile-dev libesd0-dev libdirectfb-dev libdirectfb-extra libfreetype6-dev libxext-dev x11proto-xext-dev libfreetype6(upgrade) libaa1 libaa1-dev libslang2-dev libasound2 libasound-dev

After this download libgraph-1.0.1 (This is the link) to your Home Folder.
Right click on it and press “Extract here”

open terminal and navigate into the folder u just extracted the file contents into by running $ cd libgraph-1.0.1

Now run the following commands one after the another. Proceed to the next command only if the preceding command executes without any errors.
$ ./configure
  $ sudo make
  $ sudo make install

If you get any errors during the “sudo make” step, paste it in the comments section of this post.

Now technically install is over. :)

Try writing a simple program including graphics.h. Declare the values of gd and gm and call initgraph as follows

int gd,gm=VGAMAX; gd=DETECT;
initgraph(&gd,&gm,NULL);

and when compiling using g++ add an extra paramter -lgraph

i.e if you are compiling a program example.cpp in the terminal u type in

$ g++ example.cpp -o example.o -lgraph

And execute the program by runnung ./example.o

If on compile it gives u an error that says “could not load shared libraries” or something like that just run the following command and it should fix it

$ sudo cp /usr/local/lib/libgraph.* /usr/lib

An example program(to print a line) :

#include<iostream>
#include<graphics.h>

int main()
{
int gd,gm=VGAMAX; gd=DETECT;
initgraph(&gd,&gm,NULL);
line(50,50,80,80);
delay(5000);

return 0;
}

Installation of g++ compiler in LINUX

GNU C++ compiler is a fairly portable optimizing compiler for C++/C. g++ compiler is used to execute both c and c++ programs.

Command for installing G++ Cmpiler

Execute this command in terminal :

$ sudo apt-get install g++

Steps for compiling and executing c++ program

1. Write and save the program in gedit
    
    //Sample c++ program
    #include<iostream>
    using namespace std;
    main()
    {
         cout<<"Sample c++ Program";
         return 0;
    }

    Save the program as sample.cpp (.cpp is the extension for c++ program).

2. Compile the program

   Write the following command in terminal after installing g++ compiler.
   $ g++ sample.cpp -o sample.o

   In this command,
  • g++ indicates the compiler name,
  •  sample.cpp is a file name of the source program,
  •  -o option specifies the file name of the output program.
  •   sample.o is an output file.
   If there is no syntax/semantic error in you program then the compiler 
   will successfully generate an executable file,otherwise fix the problem 
   in your code.

3. Executing the program
   Write the following command in terminal after compiling c++ program.
   $ ./sample.o
 
   After executing this command it gives the output as:
   Sample c++ Program

If you have any problems then share it through comments.