$24.99
CST8234 - C Programming
LAB 3
LAB OBJECTIVE
By completing this lab, you will learn to:
• Use make tool to compile and link source files and produce an
executable file.
LAB INSTRUCTIONS:
STATEMENT OF THE PROBLEM:
Make is a tool that allows you to easily compile your source code and
deploy it. By using Make, you can distribute your program in its raw
form, source code, and provide the end user the ability to produce an
executable file at their machine.
For Make to work, you need to provide the end user with a file called
makefile, which includes the full instructions on how to build the source
code. makefile has its own unique formats can be written in a number
of different ways. You can write the makefile to include the full
instructions on how to build the program, or you can rely on Make to
provide you with implicit recipes.
REQUIREMENTS:
In this lab, you are given 8 C files that resembles a fake program that
needs to be compiled. You are tasked with writing the makefile needed
to make sure the program builds and runs as expected. You will write
two versions of the makefile for this program as follow:
1. You will use the full format of makefile, and will be very explicit about
the instructions for building the file, including the gcc compile
command.
2. You will write a second version of the file which uses Make’s ability to
implicitly declare recipes for you.
3. Change the userName printed at a successful run of the program to
be your first name. Please refer to the screen shot below for details
You will need to read the slides in order to understand the requirements
and complete this lab. Please refer to them as soon as possible. You
also will need to read the program files provided to understand the
dependencies between them so that you can write the correct recipes
for building the program.
If you write the correct makefile and compile the program as expected,
you should see an output that is similar to the following
PROGRAM FILES
Please make sure to download and use the following files:
• main.c
• commands.h
• commands.c
• defs.h
• users.h
• users.c
• tools.h
• tools.c
SUBMISSION INSTRUCTIONS
• No late submissions are accepted.
• You can work in a group of maximum 2 students to complete this
lab. Individual work is also accepted.
• If working in a group, add a Readme.txt file that contain each
student name and student number.
• You are required to show your work during the lab time to the
instructor.
• You must submit the source code for the program and the makefile.
Add all your files under a folder call “lastName-firstName-Lab3”, then
Zip the file and submit the zip file only. Make sure to submit all files
required to compile and run the program on the instructor machine
with any errors.
• DON’T submit any extra file please. For example, the binary file (AKA
object or output) files like .exe or .o.
• Brightspace is configured to keep the last submission only. Please
complete all steps required to finish the lab before your first
submission.
• All submission must be done on the main Brightspace shell,
19F_CST8234_010_ALL or 19F_CST8234_020_ALL, not the lab
section one.