General Makefile Application Guide for Advanced Embedded Programming

General Makefile Application Guide for Advanced Embedded Programming

Introduction For development on Windows, many IDEs integrate compilers, such as Visual Studio, providing a “one-click compile” feature, allowing the user to compile, link, and generate target files with just one operation after coding. Linux development differs from Windows; the gcc/g++ compiler is generally used in Linux. If developing Linux programs for ARM, the arm-linux-gcc/arm-linux-g++ … Read more

Quick Start Guide to Makefile

Quick Start Guide to Makefile

1. Quick Start Guide to Makefile The goal of this article is to help you write simple Makefiles and understand common Makefiles. Make is an old build tool, which is incredible in today’s rapidly evolving technology landscape. Make plays a significant role in large software projects. I first encountered it while learning the Linux kernel, … Read more

Understanding Makefile, Kconfig, and .config in Linux Kernel

Understanding Makefile, Kconfig, and .config in Linux Kernel

When compiling the Linux kernel, we often execute some commands in the top-level directory of the Linux kernel. Taking RK3288 as an example, commands include: make firefly-rk3288-linux_defconfig, make menuconfig, make firefly-rk3288.img, make zImage, etc. Without delving into the specific meanings yet, I would like to raise a few questions. (1) The Linux kernel is so … Read more

Make/Makefile: Automation Build Tool for Linux Projects

Make/Makefile: Automation Build Tool for Linux Projects

Follow Me by Clicking the Blue Text In Linux systems, make and Makefile are essential tools for automating the compilation and building of software projects. They simplify the software development process by automating the execution of a series of predefined commands to compile source code, run tests, install programs, and more. What is make? make … Read more

Understanding the Relationship Between Makefile, Kconfig, and .config in Linux Kernel

Understanding the Relationship Between Makefile, Kconfig, and .config in Linux Kernel

Source: Baiwen Technology ❞The Linux kernel source code files are numerous, and it’s hard to understand the relationship between Makefile, Kconfig, and .config. Without understanding the kernel compilation system, it can be difficult to compile and modify the kernel, integrate your own drivers, or configure the kernel. These issues are all related to Makefile, Kconfig, … Read more

Driver Development Under Linux Device Tree

Driver Development Under Linux Device Tree

Overview This article introduces the development process and methods of device drivers under the platform framework, mainly including the development of device trees, drivers, and applications. Taking the random number driver as an example, it implements the process of the application calling the library function, entering the kernel through a system call, and finally executing … Read more

The ‘Bridge’ Between Linux Devices and Drivers | Bus

The 'Bridge' Between Linux Devices and Drivers | Bus

1. Introduction In the Linux device driver model, a bus is an abstract concept, a special type of device. In the implementation of the device model, the kernel specifies that each device in the system must be connected to a bus, which can be an internal Bus, a virtual Bus, or a Platform bus. The … Read more

Linux Platform Bus Driver Device Model

Linux Platform Bus Driver Device Model

Embedded Linux QQ Group: 175159209, enthusiasts are welcome to join and discuss technical issues! The platform bus is a virtual bus, and the corresponding device is a platform_device, while the driver is a platform_driver. In the device driver model of Linux 2.6, I2C, RTC, LCD, etc. are classified as platform_device. The bus binds devices and … Read more

Linux Workshop Adventure: Exploring Buses, Devices, and Drivers

Linux Workshop Adventure: Exploring Buses, Devices, and Drivers

Click the blue text above to follow me and read beautiful articles. The Linux operating system’s kernel manages various hardware devices in the system, including buses, devices, and drivers. This article will introduce the basic concepts of buses, devices, and drivers in the Linux system, as well as their relationships. By combining relevant /sys directory … Read more

Linux Character Device Driver Example

Linux Character Device Driver Example

globalmem Looking at Linux device driver development details, the chapter on character device drivers provides test code and application programs that are very helpful for beginners. The reason for writing this article is that I noticed I had not yet written about character devices, despite having previously published articles. As for the role of the … Read more