当前位置:网站首页>From source code to executable file
From source code to executable file
2022-04-23 18:03:00 【OceanKeeper1215】
1、 Preprocessing gcc -c
- Will all ”#define“ Delete , And expand all the macro definitions
- Handle all conditional compilation instructions , Enter into “#if”,“ifdef” etc. .
- Handle #“include” Precompiling instructions , Insert the included file into the location of the precompiled directive
- Delete all comments
2、 compile
Carry out a series of syntax analysis and optimization of the preprocessed files , Generate the corresponding assembly code file
3、 assembly
Translate the mutated assembly code file into machine instructions , And generate relocatable .o file , The file is binary , Byte encoding is a machine instruction
4、 link gcc -o
Link the target files and library files together through the linker to generate a completed executable program
The main job of the linker is to connect the target files to each other , That is to connect the symbol referenced in one file with the definition of the symbol in another file , Make all these target files into a unified whole that can be loaded and executed by the operating system .
版权声明
本文为[OceanKeeper1215]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204230545105090.html
边栏推荐
- 2022 tea artist (primary) examination simulated 100 questions and simulated examination
- Dock installation redis
- Gaode map search, drag and drop query address
- Theory and practice of laser slam in dark blue College - Chapter 2 (odometer calibration)
- Fashion classification case based on keras
- Detailed deployment of flask project
- Auto.js 自定义对话框
- Crawl lottery data
- 纳米技术+AI赋能蛋白质组学|珞米生命科技完成近千万美元融资
- [UDS unified diagnostic service] (Supplement) v. detailed explanation of ECU bootloader development points (2)
猜你喜欢
Clion installation tutorial
Laser slam theory and practice of dark blue College Chapter 3 laser radar distortion removal exercise
ArcGIS table to excel exceeds the upper limit, conversion failed
Yolov4 pruning [with code]
Scikit learn sklearn 0.18 official document Chinese version
QTableWidget使用讲解
Docker 安裝 Redis
Go's gin framework learning
Re regular expression
JS get link? The following parameter name or value, according to the URL? Judge the parameters after
随机推荐
Jenkspy package installation
ROS package NMEA_ navsat_ Driver reads GPS and Beidou Positioning Information Notes
MySQL_01_简单数据检索
[UDS unified diagnostic service] (Supplement) v. detailed explanation of ECU bootloader development points (2)
JS high frequency interview questions
Clion installation tutorial
Cloud native Virtualization: building edge computing instances based on kubevirt
idea中安装YapiUpload 插件将api接口上传到yapi文档上
Thirteen documents in software engineering
2022 Jiangxi Photovoltaic Exhibition, China Distributed Photovoltaic Exhibition, Nanchang Solar Energy Utilization Exhibition
mysql自动启动设置用Systemctl start mysqld启动
Welcome to the markdown editor
Classification of cifar100 data set based on convolutional neural network
Pyppeter crawler
Timestamp to formatted date
C language input and output (printf and scanf functions, putchar and getchar functions)
GDAL + ogr learning
Gobang game based on pyGame Library
re正则表达式
MySQL auto start settings start with systemctl start mysqld