In-Depth Guide to Using Makefile

In-Depth Guide to Using Makefile

This article will illustrate how Makefile works using two examples. The author’s aim is to summarize the common problems beginners encounter when writing Makefiles in a concise manner. After reading this article, you should be able to start writing your own Makefile. Platform: Ubuntu 20 Tools: make, gcc What is Makefile The Makefile describes the … Read more

Simple Makefile Tutorial

Simple Makefile Tutorial

If you are a heavy command line user, learning Makefile can greatly improve your development efficiency. Below is a brief introduction to the knowledge and usage of Makefile. Makefile is a file that contains a set of instructions for compiling and building software projects. A Makefile typically contains a set of rules and dependencies that … Read more

Introduction to Writing Makefiles

Introduction to Writing Makefiles

Writing Makefiles 1. Introduction to make and Makefile 1.1 The make Tool The <span>make</span> tool can automatically complete compilation tasks. These tasks include: If only a few source files have been modified, only recompile those specific source files; If a header file is modified, recompile all source files that include that header file. This automatic … Read more

Getting Started with Yocto: Building a Linux Image from Scratch

Getting Started with Yocto: Building a Linux Image from Scratch

Because I need some knowledge related to embedded Linux in my work, I started to learn. Yocto is a complete set of tools under the Linux Foundation used to build Linux for embedded devices. With Yocto, we can create our own Linux system for our embedded devices, customize and trim the necessary modules, and package … Read more

Detailed Explanation of CMakeLists.txt

Detailed Explanation of CMakeLists.txt

In the previous article, “Introduction to CMake Build Tool for ESP32,” we introduced the most basic usage of CMake with a “Hello World” program. Today, we will provide a detailed explanation of the CMakeLists.txt file. CMakeLists.txt The CMakeLists.txt file is the core configuration file for the CMake build tool. It contains a series of instructions … Read more

CMake Learning Notes: Modular Project Management (Part 1)

CMake Learning Notes: Modular Project Management (Part 1)

1. What is CMake? CMake is a cross-platform project build tool. Other project build tools we are familiar with include Makefile (which builds projects using the make command). Most IDE software integrates make, such as nmake in VS, GNU make in Linux, and qmake in Qt. These Make tools follow different specifications and standards, and … Read more

Understanding the Power of CMake Build Tool

Understanding the Power of CMake Build Tool

CMake is an open-source, cross-platform build tool that is very well-known in the development community and is used in various projects. This article aims to explore why CMake is powerful. Content Source: https://aosabook.org/en/cmake.html Original Title: CMake Authors: Bill Hoffman && Kenneth Martin Translator: Liu Zuosha Note: The translation may have some simplifications, rearrangements, and additions … Read more

Introduction to CMake: Easily Build C++ Projects

Introduction to CMake: Easily Build C++ Projects

In C++ project development, the build process can often be cumbersome, especially in cross-platform development. Today, I would like to introduce a powerful build tool—CMake. 1. What is CMake CMake is a cross-platform automated build tool widely used in C++ projects. It is primarily used to manage the software compilation process by controlling the compilation … Read more

CMake: The Superior Choice for Software Building

CMake: The Superior Choice for Software Building

1. The Role of CMake in Real Life In modern software development, CMake plays a crucial role. It is a cross-platform build tool that helps developers efficiently manage and build software projects. First, CMake provides a unified way to describe the build process of a project, ensuring consistency regardless of whether the project is developed … Read more

Understanding the Relationship Between GCC, CMake, Make, and Ninja

Understanding the Relationship Between GCC, CMake, Make, and Ninja

1. The Birth of GCC! In 1985, on a dark night where one could hardly see their hand in front of their face, a bearded, short-statured man with long, unkempt hair began to write a C language compiler. This man later became known as the “greatest programmer” and the “father of free software,” Richard Stallman. … Read more