How To Compile And Run a C/C++ Code In Linux

I

am a new Linux user and student who used to write C or C++ programs on MS-Windows. Now, I am using Ubuntu Linux. How can I compile a C or C++ program on Linux operating systems using bash Terminal application?

 

To compile a C or C++ program on any Linux distro such as Ubuntu, Red Hat, Fedora, Debian and other Linux distro you need to install:

GNU C and C++ compiler collection

Development tools

Development libraries

IDE or text editor to write programs

Step #1: Install C/C++ compiler and related tools

If you are using Fedora, Red Hat, CentOS, or Scientific Linux, use the following yum command to install GNU c/c++ compiler:

# yum groupinstall  Development Tools

 

If you are using Debian or Ubuntu Linux, type the following apt-get command to install GNU c/c++ compiler:

$ sudo apt-get update

$ sudo apt-get install build-essential manpages-dev

Step #2: Verify installation

Type the following command to display the version number and location of the compiler on Linux:

$ whereis gcc

$ which gcc

$ gcc –version

 

Sample outputs:

Fig. 01: GNU C/C++ compilers on Linux

How to Compile and Run C/C++ program on Linux

Create a file called demo.c using a text editor such as vi, emacs or joe:

#include<stdio.h>

/* demo.c:  My first C program on a Linux */

int main(void)

{

printf( Hello! This is a test prgoram.\n );

return 0;

}

How do I compile the program on Linux?

Use any one of the following syntax to compile the program called demo.c:

cc program-source-code.c -o executable-file-name

OR

gcc program-source-code.c -o executable-file-name

OR

assuming that executable-file-name.c exists ##

make executable-file-name

In this example, compile demo.c, enter:

cc     demo.c   -o demo

OR

assuming demo.c exists in the current directory ##

make demo

If there is no error in your code or C program then the compiler will successfully create an executable file called demo in the current directory, otherwise you need fix the code. To verify this, type:

$ ls -l demo*

How do I run or execute the program called demo on Linux?

Simply type the the program name:

$ ./demo

 

OR

$ /path/to/demo

 

Samples session:

Animated gif 01: Compile and run C and C++ program demo

Compiling and running a simple C++ program

Create a program called demo2.C as follows:

#include  iostream

// demo2.C – Sample C++ program

int main(void)

{

std::cout <<  Hello! This is a C++ program.\n ;

return 0;

}

To compile this program, enter:

g++ demo2.C -o demo2

or use the following syntax ##

make demo2

To run this program, type:

./demo2

How do I generate symbolic information for gdb and warning messages?

The syntax is as follows C compiler:

cc -g -Wall input.c -o executable

 

The syntax is as follows C++ compiler:

g++ -g -Wall input.C -o executable

How do I generate optimized code on a Linux machine?

The syntax is as follows C compiler:

cc -O input.c -o executable

 

The syntax is as follows C++ compiler:

g++ -O -Wall input.C -o executable

How do I compile a C program that uses math functions?

The syntax is as follows when need pass the -lm option with gcc to link with the math libraries:

cc myth1.c -o executable -lm

How do I compile a C++ program that uses Xlib graphics functions?

The syntax is as follows when need pass the -lX11 option with gcc to link with the Xlib libraries:

g++ fireworks.C -o executable -lX11

How do I compile a program with multiple source files?

The syntax is as follows if the source code is in several files (such as light.c, sky.c, fireworks.c):

cc light.c sky.c fireworks.c -o executable

 

C++ syntax is as follows if the source code is in several files:

g++ ac.C bc.C file3.C -o my-program-name

 

See gcc(1) for more information.

This entry is 7 of 13 in the Linux GNU/GCC Compilers Tutorial series. Keep reading the rest of the series:

Ubuntu Linux Install GNU GCC Compiler and Development Environment

Debian Linux Install GNU GCC Compiler and Development Environment

CentOS / RHEL 7: Install GCC (C and C++ Compiler) and Development Tools

Download and Install C, C++ Compiler on Red Hat Enterprise Linux 5 (RHEL)

Mac OS X: Install GCC Compiler with Xcode

Where is My Linux GNU C or GCC Compilers Are Installed?

HowTo: Compile And Run a C/C++ Code In Linux

RHEL / CentOS Linux Install Core Development Tools Automake, Gcc (C/C++), Perl, Python & Debuggers

HowTo Compiling C Program And Creating Executable File Under a Linux / UNIX / *BSD

How To Install ncurses Library on a Linux

Linux Find Out What Compilers Are Installed or Available On The System

Linux Find Out GNU gcc Compiler Version Used To Compile Running Kernel

Howto see output of C program in Linux or UNIX

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *