Makefile and GNU make for C/C++ Projects on Linux systems
What you'll 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
- Exposure to Linux or GNUStep and MINGW environment
- Basic understanding of build process of software product
- Understanding of variety of tasks that are required for software product
- Free GNU make tool on Linux/Unix
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."
"Good explanation in short time."
"Great intro to learn Makefile."
"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.
Who this course is for:
- Software Developers/Engineers
- Software/Solution Architects
- Technical Managers
Industry experience of 18+ years.
Worked on system side includes Driver, Compiler, Linker, Debugger, IDE, System Utilities, System Management.
Worked on architecture and design of various products and tools.
Author of popular book on C language "C In Depth" and on Data Structures "Data Structures Through C In Depth".
C In Depth, S K Srivastava, Deepali Srivastava, BPB Publications, Sold 180,000+ copies
Data Structures Through C In Depth, S K Srivastava, Deepali Srivastava, BPB Publications, Sold 70,000+ copies
Founder and Managing Director of Sonebhadra Technologies which provides software solutions and training.