编译方法及工具

编译的四个步骤:

预处理 #开头内容,展开头文件,替换宏定义,不会进行语法检查。

gcc -E xx.c -o xx.i

编译检查语法错误,词法错误,将.i文件转换成.s汇编文件。

gcc -S xx.i -o xx.s

汇编将汇编文件转换成二进制文件(不可执行)

gcc -c xx.s -o xx.o

链接链接库文件,将不可执行的二进制文件转换成可执行的二进制文件。

gcc xx.o -o xx

gcc xx.c 默认生成a.out

-o: 生成一个名字可执行文件

  1. gdb调试工具

gcc -g xx.c 生成 a.out

gdb a.out

r: 运行代码

l: 查看文件

b 行号或者函数名:添加断点

info b:查看断点情况

d num(断点编号):删除断点

p 变量名:查看变量的值

s/n: 单步运行,s会进入子函数顺序执行;单步跳过,n不会进入子函数

c: 执行到下一个断点的位置

help:帮助

q: 退出

步骤:代码写好后,先通过gcc -g进行编译代码,没有错误后,可以通过gdb a.out进行调试,输入l查看文件内容,通过b设置断点,输入r进行运行,n或s进行单步调试,q退出

meke编译工具

make:工程管理器,顾名思义,是指管理较多的文件

make工程管理器也就是个“自动编译管理器”,这里的“自动”是指它能构根据文件时间戳自动发现更新过的文件而减少编译的工作量,同时,它通过读入Makefile文件文件的内容来执行大量的编译工作。

Makefile或makefile时make读取的唯一配置文件。

makefile根据以下步骤编写:

gcc -c xx.c -o xx.o

gcc xx.o -o xx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值