Learning and Using Makefile: A Comprehensive Guide

Learning and Using Makefile: A Comprehensive Guide

1. Introduction to Makefile Makefile is used in conjunction with the make tool to organize and manage the compilation and linking of project source code. The make tool identifies modified files, finds the affected related files based on dependencies, and finally compiles these files according to the rules. The Makefile records the dependencies and compilation … Read more

How Makefile Compiles Code Files

How Makefile Compiles Code Files

This article summarizes: This article mainly introduces the process of using Makefile to compile code into executable binary files for microcontrollers and discusses commonly used Makefile syntax. It narrates the transformation from a straightforward Makefile to a more universal Makefile. Introduction to Makefile The most common function of a Makefile is to inform the make … Read more

Mastering Makefile: A Comprehensive Guide

Mastering Makefile: A Comprehensive Guide

1What is Makefile In the previous study of compiling C programs, we learned that compiling a program is relatively simple. However, if we need to compile multiple files or files in different folders, we need to generate different library files and determine the compilation order of these files, which often requires many complex command lines … Read more

Setting Dynamic Library Path Parameters in Makefile

Setting Dynamic Library Path Parameters in Makefile

Table of Contents 1. Makefile Dynamic Library Related 1.1 Libs Variable 1.2 LDFLAGS Variable 1.3 Differences Between the Two 2. Configuration Methods 2.1 Specifying Library Path During Compilation 2.2 Specifying Library Path During Runtime 3. Testing 1. Makefile Dynamic Library Related 1.1 Libs Variable In a Makefile, Libs is typically a variable used to store … Read more

Refactoring a Go Project Makefile

Refactoring a Go Project Makefile

If you are not familiar with Makefile, I recommend reading Ruanyifeng’s article “Make Command Tutorial[1]“. This article will guide you to write a more elegant Makefile through a refactoring example, so let’s get started! Assuming there is a project named foo, developed in Golang and deployed on Docker, its Makefile is as follows: APP = … Read more

STM32 Bare Metal Programming 04 – Makefile Automation

STM32 Bare Metal Programming 04 - Makefile Automation

Makefile: Build Automation We can use the make command line tool instead of manually typing in “compile”, “link”, and “flash” commands, automating the entire process. The make tool uses a configuration file called Makefile to read the instructions for executing actions. This automation is great because it also documents the process of building firmware and … Read more

In-Depth Analysis of CMake Build Process: From Fundamentals to Complex Projects

In-Depth Analysis of CMake Build Process: From Fundamentals to Complex Projects

1. Analysis of the Project Structure After CMake Build 1.1 Directory Structure After CMake Build After CMake build is complete, a directory named build will be generated in the root directory of the project. This directory is where all intermediate files and final target files generated during the CMake build process are stored. Below, we … Read more

A Concise Guide to Makefile in Chip Design

A Concise Guide to Makefile in Chip Design

What can Makefile do? Makefile can execute commands based on specified dependency rules and whether files have been modified. It is commonly used to compile software source code, only recompiling modified files, which significantly speeds up the compilation process. The Basic Format of Makefile Target: Dependencies Command The target is the result to be generated, … Read more