The Essential C/C++ Build Tool: Mastering CMake

The Essential C/C++ Build Tool: Mastering CMake

Book Giveaway at the End Part.1 How Many Pitfalls Have You Encountered in C/C++ Builds? For those involved in C/C++ development, have you ever faced frustrating build failures? A project builds perfectly in your development environment, but fails in another environment. Or perhaps an open-source project throws an error when you try to build it … Read more

Using Local Source for Remote Programming in CLion

Using Local Source for Remote Programming in CLion

Local Client Operating System: macOS / Linux / Windows Remote Host Operating System: Linux Source File Location: Local, automatically synchronized to remote host Required Tools on Remote Host: macOS/Linux/Windows client needs rsync, Windows client needs tar Project Model: CMake/Makefile Required Plugins (pre-installed and enabled by default): FTP/SFTP/WebDAV connection This remote mode allows you to use … Read more

Setting Up IAR Toolchain in CLion

Setting Up IAR Toolchain in CLion

Operating System: Windows (MinGW) / Linux Project Format: CMake When setting up a toolchain for your embedded project, you can use the IAR compiler. CLion recognizes it as a C/C++ compiler and collects compiler information. You can also open projects that use the IAR toolchain, which should load successfully. Currently, only CMake-based projects are supported. … Read more

CLion Tutorial – Device Tree Files

CLion Tutorial - Device Tree Files

Device tree is a hierarchical data structure primarily used to describe hardware. CLion recognizes .dts/.dtsi files and provides code assistance and code analysis features. Configure Development Board (Zephyr) If you are using Zephyr, make sure to select the development board you are using in the settings: Go to Settings | Languages & Frameworks | Device … Read more

How to Compile C Programs in Linux

How to Compile C Programs in Linux

Article Word Count: 1400 Practical Index: ⭐⭐⭐⭐⭐ Common IDEs for compiling on Windows, while using gcc directly for compilation in Linux, is the foundation of Linux embedded programming and also a frequently asked question in embedded interviews. Command Line Compilation and Detailed Compilation Process Example code for hello.c: #include <stdio.h> int main(void) { printf("Hello world\n"); … Read more

CLion Tutorial – Embedded Development

CLion Tutorial - Embedded Development

This page provides an overview of how to use CLion as your embedded development IDE. For detailed feature descriptions and setup instructions, please refer to the dedicated articles in this section. Hardware TypeCLion supports embedded development for any hardware compatible with the GCC or IAR toolchain. Some examples include: ARM-based microcontrollers, such as the STM32 … 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

Introduction to Make and Makefile in Compilation and Linking

Introduction to Make and Makefile in Compilation and Linking

Introduction Many engineers without formal training are actually quite unfamiliar with the compilation and linking of projects (including the author himself). However, if we want to create our own projects or implement a project from 0 to 1, or if we want to optimize programs, modify the memory layout, or implement memory protection under the … 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

Introduction to Makefile Structure in Compilation and Linking

Introduction to Makefile Structure in Compilation and Linking

Introduction Many engineers without formal education in computer science are actually not familiar with the compilation and linking of projects (including the author). However, if we want to create our own projects or implement a project from 0 to 1, or if we want to optimize programs, modify the memory layout, or implement memory protection … Read more