Makefile and GNU make for C/C++ Projects on Linux systems

Makefile and GNU make for C/C++ Projects Embedded gnu makefile stm32 programming Yocto Linux Systems gcc cmake kernel

3.50 (241 reviews)
Udemy
platform
English
language
Software Engineering
category
Makefile and GNU make for C/C++ Projects on Linux systems
1,695
students
2 hours
content
Dec 2023
last update
$54.99
regular price

What you will learn

Understanding of build process automation for software product

Understanding of tasks required to manage the software product

Explanation of various GNU make utility features for efficient automation

How to write Makefile

Demo of make utility features with appropriate Makefile and other files

Knowledge to understand the existing build process

Knowledge to define the build process for new product

45 Quiz questions for better understanding of Makefile and GNU make

Why take this course?

This "Makefile and GNU make" course is unique and not available anywhere else. Its a must(have to skill) for defining the build process for new product and understanding for maintenance of existing product.

Subtitles are provided with this course.

Why learn Makefile and GNU make

  • Must have skill for Software Development/Maintenance

  • Every Project has Build activity

  • There are separate Build and Release teams

  • Automation of Build is must for big real and complex projects

  • First step to get complex product to release

  • Necessary to understand the working of Product

  • Better management of product

  • Fresh engineers require better understanding of system

  • To understand cmake generated makefile

  • Well prepared for interview


Build process is one of the most important activity in development and support of software product. Software products have grown with unbelievable number of files. Now most of the big software products require separate team for build activity. Similarly there are lot of tasks required for managing the software products. Whether it is a development from scratch or maintenance of existing product, build process has to be defined and understood properly. Makefile and GNU make are used heavily from years for software product build automation.


The complexity of build process and numerous tasks to maintain the software product require efficient automation. Makefile and GNU make in linux/unix provides great features to automate the build process and tasks in efficient way. Use of Makefile in C / C++ projects is very common and GNU make is most favorite tool of developers for building the complex projects.

This "Learn Makefile and GNU make on Linux and Unix" tutorial explains all the features provided by the GNU make utility. The course explains how to create the Makefile, how to run the Makefile, rules, phony target and various activity of building project in Makefile by using the features provided by GNU make.

All the features explained have been shown with appropriate Makefile examples and other required files. Automation of build process and tasks have been explained and demonstration is provided for the same.

In this Learn Makefile and GNU make course, I have used Free GNUStep and MINGW on Windows as environment but it can be done on any Linux/Unix system or other system for variety of applications for automation of build process and tasks.

GNU make book/manual/documentation will be good to explore to get more details and this Makefile course will be good help to move ahead.

Makefile Examples are taken for small C programs but simple programs of any other language like C++/Java/Python/Ruby/golang etc can be taken to learn and build automation of projects and tasks.

Makefile and GNU make is used for Docker/Embedded System too because it provides the opportunity for incremental build and lot of automation for Docker/Embedded System.

Makefile books/tutorial are not much available to developers, this "Learn Makefile and GNU make on Linux and Unix" course is already helping lot of developers and will make good foundation. Also it will be a good complement to any Makefile book/tutorial.

This Learn Makefile and GNU make tutorial will also help you to learn CMake generated makefiles.

What Students Say-

"Very good course for those who want to work on makefile. Although I was using gnu make in my work since many years, I had not explored all it's options. This course explains all the options with great detail. Thanks for creating such a wonderful course."

"I have used several build systems in the past decades and somehow missed Linux make. Last year I started to go deeper in Linux and moved my development projects from Windows to Linux.

GNU make utility has kept coming up time to time. Now, I am in a need of a simple build system to compile SASS projects, move Web-client files back and forth and deploy PHP files under various web servers. I chose gnu make because it has been always there (at least since 40 years) and I think it is going to be there for a long time on most platforms that counts (to me).

So, I tried to learn it on my own with a trial-and-error approach as well as from various blogs. I even started to read a makefile book solely dedicated to this topic. In vain. To be honest, the more I read about gnu make the more cryptic it got to seem to me.

Luckily, Suresh's training managed to shed a light on the foundations which are basically quite simple. I really like his gradual approach through light examples by keeping those makefiles as straightforward as possible. Obviously, the course is for mere dummies and there is a lot to learn after the course over real life applications.

All, in all, I found this course the best starter on this topic."

"Nice course"

"Nice explanation"

"Fantastic"

"Very informative"

"Good explanation in short time."

"Great intro to learn Makefile."

"wonderful review."

"The instructor did well."

"yes , the Course is very Simple and to the Point"

"Good course for me - learned just what I was looking for, thanks"

"This course provides a great overview, very useful for people, who are fresh in GNU Makefile tool."

"I liked the presentation style and course content."

"instructor makes great effort to explain the topics and provide terrific examples. Definitely learned a lot."

"Very helpful course. Understandable material, right order of the topics, enough practical examples and good explanation."

"I think it is very good explained and it is easy to follow since the material is presented step by step, examples are also good."

"This was a comprehensive course on using make. I thought that the instructor was very knowledgeable and did a great job covering different features of GNU make utility."

"This is exactly what you need to learn gnu Make with no worries about anything being left out.

In fact, I had been taking a course on another site and they glossed over GNU Make so much that I came back to Udemy looking for a real course on the subject. This is it!

The Instructor sets up a couple of examples right away and reuses them as the complexity of what's being discussed increases - this is very helpful.

He's very thorough in demonstrating every line of code - at points you might think there are TOO MANY examples (how often can you say that about a course?) , but I would encourage you to stick with it - the repetition really drives the points home and gets you familiar with the unfamiliar syntax of GNU Make."

"This is pretty short course without any practical tasks, but it really answered all my questions regarding GNU make and gave me a good base to continue study."

"Mr. Suresh has a solid, firm knowledge of the subjects approached in the course. It's a very easy going course which flows in a pleasant way.

The way he presents the course is quite dynamic and enjoyable. I've been wanting to specialize myself in the subject of the course for quite a while already. Have bought a few GNU make books for the subject, read them all, but have only barely scratched the surface. I really feel now that I'm finally going to have a deeper grasp of it, thanks to Suresh's course."


So what are you waiting for, click on Buy button to enroll now and start learning.

Screenshots

Makefile and GNU make for C/C++ Projects on Linux systems - Screenshot_01Makefile and GNU make for C/C++ Projects on Linux systems - Screenshot_02Makefile and GNU make for C/C++ Projects on Linux systems - Screenshot_03Makefile and GNU make for C/C++ Projects on Linux systems - Screenshot_04

Reviews

Shirish
July 2, 2023
very basic but enough to get started with your own large C program projects. THis helped me understand makefiles in embedded systems.
eduard
August 13, 2022
overall a good course although very basic, good for students without any experience. not fitting to experienced programmers
Marc
April 29, 2022
Overall, the content was useful. But the code examples are filmed with a full screen capture so the code is very small and hard to read if you are coding along. Also, there is no need to show running both the "-k" and "--keep-going" options as these are the same. This is done with several make options and feels like filler.
Mohammad
July 7, 2021
Please work on better subtitles. for example: test1.o test2.o test3.o were written as Nazi in ROTC ... blah blah ...!please make sure the subtitles are accurate.
Brad
December 13, 2020
This was way too basic to be of any use to a professional engineer. If I had absolutely no idea how GNU make and Makefiles worked then this course would be good. Need more practical application, maybe actual projects where you implement Makefiles.
Gebi
November 22, 2020
he jumps right into the meat, without explaining, a small background knowledge! - what is make? - how does it work? - on windows, how to use it - on linux... - what uses make? - project structure for make would have been a great thing to have in background before diving into the make/make file etc.
Brian
December 4, 2016
Subtitles or a transcript would be great for this course, I am having difficulty understanding the instructor. There is some good information here, but I have to infer most of it from the examples.
James
October 3, 2016
Accent is sometimes hard to understand, but material is good. -Update: He added subtitles. Great add!
Philip
August 17, 2016
The explanation of the options of the Make utility was clear and he was fairly easy to understand, but starting with Lecture 24 or so and on, he frequently presents the subject matter (options for make files), but neglects to show all possibilities (for instance what would have normally happened if an error was occurred vs. simply choosing to suppress them or keep going) and in some of the final sessions, like the print directories one, he didn't even show the option being used.
Anargyros
August 17, 2016
Very bad accent of the presenter. Very poor content. In such a specific course, a lot more content should be included.
Joseph
March 11, 2016
The instructor's accent is so thick, and his pronunciation of English words is so poor that I can hardly understand what he is saying.
Payman
January 20, 2016
Not only the english is hard to understand but mainly the material is presented in a jumbled manner , and no explanation on why certain things work the way they do. very poor presentation of writing a makefile.
Michael
November 19, 2015
This is pretty short course without any practical tasks, but it really answered all my questions regarding make and gave me a good base to continue study.
Chidambaram
October 29, 2015
Though the instructor is very good at explaining what he choses to explain, I felt the course coverage area was very less. I felt more practice questions must be added and the instructor should teach the students by solving them. Nonetheless, its a very good course to get you going with Makefile basics. It is NOT an advanced course.
Sid
September 9, 2015
instructor makes great effort to explain the topics and provide terrific examples. Definitely learned a lot.

Charts

Price

Makefile and GNU make for C/C++ Projects on Linux systems - Price chart

Rating

Makefile and GNU make for C/C++ Projects on Linux systems - Ratings chart

Enrollment distribution

Makefile and GNU make for C/C++ Projects on Linux systems - Distribution chart

Related Topics

533004
udemy ID
6/20/2015
course created date
4/4/2020
course indexed date
Bot
course submited by