0% found this document useful (0 votes)
3 views20 pages

SoftwareTools Introduction

The document outlines the course CSE2153 - Software Tools for 3rd Semester students at Heritage Institute of Technology, detailing course outcomes and the software tools to be learned, including IDEs, gcc, gdb, and Git. It emphasizes the importance of software tools in enhancing coding efficiency and introduces practical projects for students to apply their learning. Additionally, it provides instructions on using Code::Blocks IDE for project creation and management.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views20 pages

SoftwareTools Introduction

The document outlines the course CSE2153 - Software Tools for 3rd Semester students at Heritage Institute of Technology, detailing course outcomes and the software tools to be learned, including IDEs, gcc, gdb, and Git. It emphasizes the importance of software tools in enhancing coding efficiency and introduces practical projects for students to apply their learning. Additionally, it provides instructions on using Code::Blocks IDE for project creation and management.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Heritage Institute of Technology

CSE, 3rd Semester , 2025

Software Tools Lab


CSE2153

Pratyusa Dash

CSE2153 – Software Tools, 3rd Sem, 2025 1


Course Outcomes
• After completion of the course, students will be able to
• CSE2153.1: Learn the concept and use of an integrated
development environment.
• CSE2153.2: Identify different compilation options in gcc and
develop static and shared libraries.
• CSE2153.3: Analyze the errors in a code using gdb and
valgrind.
• CSE2153.4 Analyse a code with code coverage testing and
know how to speed up execution using profiling tools.
• CSE2153.5: Compose a makefile and use the make utility to
automate compilations.
• CSE2153.6: Understand the need for version control and
learn effective methods to do the same.
CSE2153 – Software Tools, 3rd Sem, 2025 2
What are Software Tools?
• What are Software Tools?
– A software tool or more specifically a software
development tool is a computer
program that software developers use to create,
debug, maintain, or otherwise support their
projects and applications.
• Why do we need them?
– Help us code more efficiently
– Stay ahead of others when we join the industry
CSE2153 – Software Tools, 3rd Sem, 2025 3
What are the software tools that we
will be learning?
• CodeBlocks IDE
• Compiling with gcc and debugging using gdb
• Create Makefiles for projects
• Code coverage testing with gcov
• Runtime profiling with gprof
• Control versions of the softwares using Git and
share files using it.
• Memory profiling with valgrind
• Static and Dynamic Libraries
CSE2153 – Software Tools, 3rd Sem, 2025 4
Integrated Development Environment (IDE)
• What is an IDE? Why do we need it?
– Helps writing Codes
• Usually a text editor with some extra bits added on to help you write code
more easily.
• Many highlight simple syntax errors on the fly
• They also often have an “autocomplete” feature, so that you don’t need
to remember whether the square root function is sqrt() or squareroot().
– In build automator
• compiles the code,
• builds an executable program by adding in any necessary libraries, some
of which you may not even be aware of.
• Those same tools make it easier to organize and include any optional
libraries, or ones you’ve created yourself.
– Debugger
• Depending on the IDE, it’s a suite of tools that will find errors in your code
before it compiles, and then (hopefully) point them out to you so that you
can fix them easily.
CSE2153 – Software Tools, 3rd Sem, 2025 5
Integrated Development Environment
(IDE)
• The Case Against IDEs
– Cost Factor
– Programmers who work in scripting languages, or
languages that evolved from scripting languages,
are more likely to regard an IDE as optional.
• Our advice:
– When you’re learning to program, the tool should
be a help, not a roadblock.

CSE2153 – Software Tools, 3rd Sem, 2025 6


Familiarization with
CODEBLOCKS

CSE2153 – Software Tools, 3rd Sem, 2025 7


First Project
• Code::Blocks creates what
is called a Workspace to
keep track of the project.
• A project is a collection of
one or more source (as
well as header) files.
• Source files
• Header files
• A library is a collection of
functions that are called
to perform specific tasks,
such as doing math, etc

CSE2153 – Software Tools, 3rd Sem, 2025 8


next..

CSE2153 – Software Tools, 3rd Sem, 2025 9


next..
• It then asks about the Project
name and where it has to be
saved.
• On clicking next, Compiler details
is asked. GNU GCC compiler is
selected and CREATE DEBUG
CONFIGURATION is ticked.
• This creates a project with a
main.cpp file which has the basic
program “Hello world” already
typed into it.
CSE2153 – Software Tools, 3rd Sem, 2025 10
next..

CSE2153 – Software Tools, 3rd Sem, 2025 11


next..
• Once the program has been written, the
project is built by clicking
• BUILD  BUILD AND RUN. A black terminal
open where the input and output is provided.
Building a project compiles all necessary files
in that project and shows and error if any.

CSE2153 – Software Tools, 3rd Sem, 2025 12


How to execute?

Compile or Build?
CSE2153 – Software Tools, 3rd Sem, 2025 13
Multi – File Projects
• Other than the few-line of programs, you shall
create a project for each of your application.
• A project contains related files such as source
codes, header files, and relevant resources.
• To insert a new file in the existing project click
FILE  NEW  FILE.
• A console opens where c/c++ source is selected.
Then C programming language is selected and
finally file name is asked. On entering file name
debug configuration is selected and a new file is
created.
CSE2153 – Software Tools, 3rd Sem, 2025 14
Next..

CSE2153 – Software Tools, 3rd Sem, 2025 15


Adding files
• To add files which have
been sent by someone
else, to a project, click
PROJECT  ADD FILES.
A console opens and
the files to be added
are selected.

CSE2153 – Software Tools, 3rd Sem, 2025 16


Adding more files cont..

When the file to be added is being created within Code::Blocks


CSE2153 – Software Tools, 3rd Sem, 2025 17
Adding more files cont..

Adding an already existing file created outside Code::Blocks


CSE2153 – Software Tools, 3rd Sem, 2025 18
Assignment Day1
1. Create a new project called “Calculator” and write separate functions for
addition, subtraction, multiplication, division.
a. Create different files for the functions.
2. Create a new project called “Factorial” to calculate factorial of a number.
write separate functions for factorial function.
3. Create a new project called “SumOfFactorial”.
a. Take a number n as input and
b. Compute the following series:
1!+2!+…+n!
Re-use the addition and factorial functions that you had written for the project
“Calculator” and Factorial

CSE2153 – Software Tools, 3rd Sem, 2025 19


Thank you

CSE2153 – Software Tools, 3rd Sem, 2025 20

You might also like