Skip to main content

ROS Publisher and Subscribers | ROS Noetic Tutorial

Graphics.h in Linux Mint or Ubuntu

This post tells you how to install graphics.h in either Ubuntu or Linux Mint

Parameters:
OS : Linux Mint 17.1 - 64 bit OS

Usually graphics.h will not be available in Linux Mint and if you want to include that in Ubuntu or Mint, here are the steps and a sample program

$ sudo apt-get update
$ sudo apt-get install build-essential autoconf automake libxmu-dev 
The above line is needed to get all the developmental libraries for ubuntu or mint. 

$ sudo apt-get install libsdl-image1.2 libsdl-image1.2-dev guile-1.8 guile-1.8-dev libsdl1.2debian libart-2.0-dev libaudiofile-dev libesd0-dev libdirectfb-dev libdirectfb-extra libfreetype6-dev libxext-dev x11proto-xext-dev libfreetype6 libaa1 libaa1-dev libslang2-dev libasound2 libasound2-dev

The above line is needed to download the complete graphics with sound libraries

Download this file libgraph
http://download.savannah.gnu.org/releases/libgraph/libgraph-1.0.2.tar.gz

Go the download location and unzip it
$ tar zxvf libgraph-1.0.2.tar.gz
$ cd libgraph-1.0.2/
$ ./configure
$ sudo make
$ sudo make install
$ sudo cp /usr/local/lib/libgraph.* /usr/lib

Once done, its ready to run the graphics.h file

Here are two examples, one to plot  stars in space

/*A program to draw a space with stars*/
#include <graphics.h>
int main()
{
  int gd=DETECT,gm;
  int i,x,y;
  initgraph(&gd,&gm,NULL);
  line(0,0,640,0);
  line(0,0,0,480);
  line(639,0,639,480);
  line(639,479,0,479);
  for(i=0;i<=1000;i++)
  {
    x=rand()%639;
    y=rand()%480;
    putpixel(x,y,15);
  }
getch();
  closegraph();
}
/* End of program */
Here is the output
graphics.h
Graphics Program for Stars



Program 2: A Program to plot a Bar Graph (Histogram)
/*Here a sample program to illustrate how to use BARS which are used for visual statistics */
#include <graphics.h>
int main() {
  int gd=DETECT,gm,maxx,maxy,x,y,button;
  initgraph(&gd,&gm,"");
  line(80,150,200,150);
  line(80,150,80,50);  

outtextxy(100,153,"<-X axis");
  outtextxy(60,50,"<-Y axis");
  bar(100,100,120,150);
  bar(130,120,150,150);
  getch();
  closegraph();
}

Here is the output
graphics.h
Graphics.h for Bar Chart
 T S Pradeep Kumar

Comments

  1. not working for the 2nd step. its showing that it is unable to locate.

    ReplyDelete
  2. Not working at the step after unzipping the download.
    $ tar zxvf libgraph-1.0.2.tar.gz
    tar (child): libgraph-1.0.2.tar.gz: Cannot open: No such file or directory
    tar (child): Error is not recoverable: exiting now
    tar: Child returned status 2
    tar: Error is not recoverable: exiting now

    ReplyDelete
  3. I wrote SDL_bgi to provide a modern, portable and fast implementation of GRAPHICS.H that runs on GNU/Linux, Windows, and macOS. It can be downloaded from http://libxbgi.sourceforge.net/

    To compile it and install it:

    $ tar zxvf SDL_bgi-2.4.4.tar.gz # or later version
    $ cd SDL_bgi-2.4.4/src
    $ make
    $ sudo make install

    Then, to compile a program that uses GRAPHICS.H:

    $ gcc -o program program.c -lSDL_bgi -lSDL2

    Happy graphics programming!

    ReplyDelete
  4. I wrote SDL_bgi to provide a modern, portable and fast implementation of GRAPHICS.H that runs on GNU/Linux, Windows, and macOS. It can be downloaded from http://libxbgi.sourceforge.net/

    To compile it and install it:

    $ tar zxvf SDL_bgi-2.4.4.tar.gz # or later version
    $ cd SDL_bgi-2.4.4/src
    $ make
    $ sudo make install

    Then, to compile a program that uses GRAPHICS.H:

    $ gcc -o program program.c -lSDL_bgi -lSDL2

    Happy graphics programming!

    ReplyDelete
  5. Its working thanku

    - if u using code runner extension for compilation don't use.
    - use: g++ -o filename filename.cpp -lgraph

    ReplyDelete

Post a Comment

Popular posts from this blog

Installing ns3 in Ubuntu 22.04 | Complete Instructions

In this post, we are going to see how to install ns-3.36.1 in Ubuntu 22.04. You can follow the video for complete details Tools used in this simulation: NS3 version ns-3.36.1  OS Used: Ubuntu 22.04 LTS Installation of NS3 (ns-3.36.1) There are some changes in the ns3 installation procedure and the dependencies. So open a terminal and issue the following commands Step 1:  Prerequisites $ sudo apt update In the following packages, all the required dependencies are taken care and you can install all these packages for the complete use of ns3. $ sudo apt install g++ python3 python3-dev pkg-config sqlite3 cmake python3-setuptools git qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools gir1.2-goocanvas-2.0 python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython3 openmpi-bin openmpi-common openmpi-doc libopenmpi-dev autoconf cvs bzr unrar gsl-bin libgsl-dev libgslcblas0 wireshark tcpdump sqlite sqlite3 libsqlite3-dev  libxml2 libxml2-dev libc6-dev libc6-dev-i386 libclang-dev llvm-

Installation of NS2 (ns-2.35) in Ubuntu 20.04

Installation of NS2 (ns-2.35) in Ubuntu 20.04 LTS Step 1: Install the basic libraries like      $] sudo apt install build-essential autoconf automake libxmu-dev Step 2: install gcc-4.8 and g++-4.8 open the file using sudo mode $] sudo nano /etc/apt/sources.list Include the following line deb http://in.archive.ubuntu.com/ubuntu bionic main universe $] sudo apt update $] sudo apt install gcc-4.8 g++-4.8 Step 3:  Unzip the ns2 packages to home folder $] tar zxvf ns-allinone-2.35.tar.gz $] cd ns-allinone-2.35/ns-2.35 Modify the following make files. ~ns-2.35/Makefile.in Change @CC@ to gcc-4.8 change @CXX@ to g++-4.8 ~nam-1.15/Makefile.in ~xgraph-12.2/Makefile.in ~otcl-1.14/Makefile.in Change in all places  @CC@ to gcc-4.8 @CPP@ or @CXX@ to g++-4.8 open the file: ~ns-2.35/linkstate/ls.h Change at the Line no 137  void eraseAll() { erase(baseMap::begin(), baseMap::end()); } to This void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); } All changes made Step 4: Open a new termi

Installation of NS2 in Ubuntu 22.04 | NS2 Tutorial 2

NS-2.35 installation in Ubuntu 22.04 This post shows how to install ns-2.35 in Ubuntu 22.04 Operating System Since ns-2.35 is too old, it needs the following packages gcc-4.8 g++-4.8 gawk and some more libraries Follow the video for more instructions So, here are the steps to install this software: To download and extract the ns2 software Download the software from the following link http://sourceforge.net/projects/nsnam/files/allinone/ns-allinone-2.35/ns-allinone-2.35.tar.gz/download Extract it to home folder and in my case its /home/pradeepkumar (I recommend to install it under your home folder) $ tar zxvf ns-allinone-2.35.tar.gz or Right click over the file and click extract here and select the home folder. $ sudo apt update $ sudo apt install build-essential autoconf automake libxmu-dev gawk To install gcc-4.8 and g++-4.8 $ sudo gedit /etc/apt/sources.list make an entry in the above file deb http://in.archive.ubuntu.com/ubuntu/ bionic main universe $ sudo apt update Since, it&#