Design Concepts and Usage of Modern CMake Tools

Design Concepts and Usage of Modern CMake Tools

Link: https://ukabuer.me/blog/more-modern-cmake/ For C/C++ developers, managing projects often becomes quite tricky when it comes to complex third-party dependencies, especially when cross-platform development is required. CMake, as a cross-platform build process management tool, provides mature solutions for finding and introducing third-party dependencies, creating build systems, testing programs, and installation. By writing a CMakeLists.txt file once and … Read more

Essential Guide for CMake Beginners to Master Build Skills

Essential Guide for CMake Beginners to Master Build Skills

Linux | Red Hat Certified | IT Technology | Operations Engineer 👇1000 people technical communication QQ group, note 【Official Account】 for faster approval 1. CMake Installation 1. Download the CMake installation package from the official website, I downloaded v3.26 wget https://github.com/Kitware/CMake/releases/download/v3.26.0-rc4/cmake-3.26.0-rc4-linux-x86_64.sh 2. Locate the downloaded .sh file and execute the script using bash bash cmake-3.26.0-rc4-linux-x86_64.sh … Read more

A Concise Guide to Managing C++ Projects with CMake

A Concise Guide to Managing C++ Projects with CMake

1. Background CMake is a product developed by Kitware and some open-source developers during the development of several toolkits (VTK), which ultimately formed a system and became an independent open-source project. Its official website is cmake.org, where more information about CMake can be found. It is a cross-platform build tool that can describe the build … Read more

DYNAMIXEL Servos: Mixed C/C++ Programming with Keil and Makefile

DYNAMIXEL Servos: Mixed C/C++ Programming with Keil and Makefile

Introduction This is a servo motor with decent performance… mainly it’s expensive. Believing that expensive means good, they bought several XM430-W210 servos to build a robotic arm. First, they controlled the servos through the ROS interface, which worked fine. However, due to the poor real-time performance of ROS itself, they began the porting journey. The … Read more

Mastering GNU Make: From Beginner to Expert

GNU Make: From Beginner to Expert Translated from: https://interrupt.memfault.com/blog/gnu-make-guidelines GNU Make is a popular and commonly used program for building C language software. It is used to build the Linux kernel and other commonly used GNU/Linux programs and software libraries. Most embedded software developers will use GNU Make at some point in their careers, either … Read more

CMake Compilation Tools and Project Building

CMake Compilation Tools and Project Building

Click on the above“Beginner’s Guide to Vision” to selectStar or “Pin” Important content delivered promptly Article Overview This article starts with the compilation process of C/C++ code, clarifying the relationship between Make and Makefile, CMake and CMakeLists, and finally provides examples from the syntax rules of CMakeLists to help everyone become familiar with how to … Read more

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

Basics of GCC Compilation

Basics of GCC Compilation

Click on the above “Beginner Learning Vision”, choose to add Star or “Top” Heavyweight content delivered at the first time This article is reprinted from: AI Algorithms and Image Processing Data Preparation ❝ To facilitate demonstration and explanation, here are a few simple files prepared in advance: test.cpp test.h main.cpp The contents of the files … Read more

History of C Language Development

History of C Language Development

History of C Language Development The world originally had no computers; engineers created them out of necessity for their work. To inform the normal operation of computers, engineers invented programming languages. As the C language exam approaches, are you feeling as frantic and furious as I am? Today, let’s learn about the history of C … Read more

Analysis of ARM Assembly and C/C++ Interoperability

Analysis of ARM Assembly and C/C++ Interoperability

Interoperability Between C Language and ARM Assembly Language 1. Accessing C Language Global Variables from Assembly Global variables can only be accessed indirectly through their addresses. To access global variables in C, you must first introduce the global variable using the extern directive, and then load its address into a register. For unsigned char type, … Read more