The Mystery of C++ Program Compilation (Part 3)

The Mystery of C++ Program Compilation (Part 3)

What really happens internally when we write a program in an IDE and click the compile button? Why does it generate an executable file? What steps are involved in this process? Is it simple or complex? In this article, we will clarify these matters. First, it is important to clarify that compilation is just a … Read more

Detailed Explanation of Linux Program Compilation Process

Detailed Explanation of Linux Program Compilation Process

↓Recommended Follow↓ Everyone knows that computer programming languages are usually divided into three categories: machine language, assembly language, and high-level language. High-level languages need to be translated into machine language to be executed, and there are two ways to translate: compiled and interpreted. Therefore, we generally divide high-level languages into two main categories: compiled languages, … Read more

Compiling OpenCV 4.8.1 with CMake and Visual Studio 2022 on Windows

Compiling OpenCV 4.8.1 with CMake and Visual Studio 2022 on Windows

1. Background The project I am maintaining runs on Windows and uses OpenCV version 4.5.2. My local development environment is on Mac and uses the newer OpenCV version 4.8.1. To keep consistency with my local development environment, I plan to upgrade OpenCV used in the project. Since the project also utilizes some features from extension … Read more

Using KEIL for Automation Scripts

Using KEIL for Automation Scripts

This article is authorized by the original author DinoHaw. The original text is published at: https://gitee.com/DinoHaw/keil-autopiler. For reprinting, please contact the author directly. 1 Source of Demand Some companies with restrictions on the development process separate development from compilation (the code version after submission) and require minimal human involvement in the compilation process, necessitating the … Read more

Anti-Decompilation Techniques Analysis

Anti-Decompilation Techniques Analysis

In this experiment, we will analyze a specially prepared binary file (non-malicious), which employs various anti-decompilation techniques. First, open antidisasm.exe using IDA: You can see a set of function calls here, each using different anti-decompilation techniques, storing the return values in the eax register. The task is to find out the return value of each … Read more

Kylin ARM System: Compile Zabbix-Agent RPM Package from Source in 3 Steps!

Kylin ARM System: Compile Zabbix-Agent RPM Package from Source in 3 Steps!

Compile Zabbix-Agent RPM Package from Source in 3 Steps! 1. Why Compile “RPM from Source”? For various domestic ARM architectures, including Kylin, finding a compatible Zabbix-Agent RPM package is extremely difficult. Compiling from source into an RPM package is the way to go — it not only matches the system architecture but also allows for … Read more

[Ubuntu][GCC] Downloading and Compiling GCC Source Code

[Ubuntu][GCC] Downloading and Compiling GCC Source Code

1. Download the GCC installation package. You can search for the official address to download it. If you cannot download it, you can try selecting a required GCC version from gitee.com/FIRC/gcc-cn-mirror. Note that if you are downloading the source code from gcc-cn-mirror, you can skip steps 2 and 3 and proceed directly to step 4 … Read more

Compiling C++ Programs with CMake on Linux

Compiling C++ Programs with CMake on Linux

Compiling C++ Programs with CMake on Linux 1. Compiling a Single .cpp File with g++ Use g++/gcc to compile a .cpp file and generate an executable file named .out g++ main.cpp 1. Create the file main.cpp #include <iostream>using namespace std; int main(){ cout<<"hello world"<<endl; return 0;} 2. Compile the file to generate the executable file … Read more

Compilation Process Record of MySQL Version 8.4.2 on the Feiteng Platform with ARM Architecture

Compilation Process Record of MySQL Version 8.4.2 on the Feiteng Platform with ARM Architecture

As a globally popularMySQL database, it has witnessed the growth ofMySQL from version3.x to the current8.x. The issue known as the2038 problem withMySQL has been resolved since version8.0.28. Recently, I downloaded the latest8.4.2 version and compiled it from source on the minimal Feiteng platform with ARM architecture, documenting some issues encountered during the process. 1.WARN_MISSING_SYSTEM_TIRPC … Read more