g++ 预处理 编译 汇编 链接 命令

g++ 预处理 编译 汇编 链接 命令

在命令行中使用 g++ 预处理、编译、汇编和链接源代码文件通常遵循以下步骤:

预处理(Preprocessing):将源代码文件转换为经过预处理器处理的中间文件。

g++ -E source.cpp -o source.i

编译(Compilation):将预处理后的文件转换为汇编语言。

g++ -S source.i -o source.s

汇编(Assembly):将汇编语言文件转换为目标文件格式。

g++ -c source.s -o source.o

链接(Linking):将目标文件和所需的库文件组合成可执行文件。

g++ source.o -o program

或者,如果有多个源代码文件和库依赖,可以一次性编译和链接所有文件:

g++ main.cpp other.cpp -o program -I/path/to/include -L/path/to/lib -lmylib

其中 -I 指定了包含文件的搜索路径,-L 指定了库文件的搜索路径,-lmylib 链接到名为 libmylib 的库。

sed 去掉文件中以 # 数字开头的行

sed -i '/^# [0-9]/d' filename

这里,/^# ``[0-9]``/d是sed的指令,其中^表示行的开始,# 匹配以# 开头的行,[0-9]表示匹配一个0到9的任意数字,``d表示删除匹配的行。filename是你要处理的文件名。

相关推荐
月明长歌5 分钟前
【码道初阶-Hot100】LeetCode 560. 和为 K 的子数组:从前缀和到哈希计数,彻底讲透为什么“统计前缀和”就等价于统计子数组个数
算法·leetcode·哈希算法
tankeven11 分钟前
HJ134 1or0
c++·算法
keep intensify15 分钟前
寻找重复数
数据结构·算法·leetcode
dgfhf20 分钟前
高性能计算资源调度
开发语言·c++·算法
x_xbx32 分钟前
LeetCode:19. 删除链表的倒数第 N 个结点
算法·leetcode·链表
weixin_3077791335 分钟前
OpenClaw-CN 安全增强方案:从理念到落地的全面剖析
开发语言·人工智能·算法·安全·语言模型
CoovallyAIHub36 分钟前
Agency-Agents(52k+ Stars):140+ 个角色模板,让 AI 编程助手变成一支专业团队
前端·算法·编程语言
nananaij37 分钟前
【LeetCode-05 好数对的数目 python解法】
python·算法·leetcode
季远迩43 分钟前
73.矩阵置零(中等)
算法
做一个码农都是奢望43 分钟前
计算机控制系统课程CH3:数字控制系统闭环响应分析与 MATLAB 实现
人工智能·算法·matlab