c程序编译命令
1.gcc 分步编译链接
(1) 预编译 : gcc -E main.c -o main.i
(2) 编译: gcc -S main.i -o main.s
(3) 汇编: gcc -c main.s -o main.o
(4) 链接: gcc main.o -o main
2.一步编译
编译链接过程
makefile 和 make
适用于多个文件的编译
makefile —>管理工程 实现自动化编译
makefile文件内容
make 命令根据 makefile 文件的规则生成可执行程序
gdb 调试代码
gcc 默认生成的就是 Release 版本。 即发行版本。
调试信息是在编译过程时加入到中间文件(.o)中的,所以必须在编译时控制其生成包含调试信息的中间文件。
所以使用
gcc -c hello.c -g —> 生成包含调试信息的中间文件 gcc -o hello hello.o
或者
gcc -o hello hello.c -g
即可生成Debug 版本进行代码调试。
输入gdb+可执行文件 ,加入断点,运行程序,即可进入调试。
常用命令
l //显示 main 函数所在的文件的源代码
list 文件名:num //显示 filename 文件 num 行上下的源代码
b 行号 //给指定行添加断点
b 函数名 //给指点函数的第一有效行添加一个断点
info break //显示断点信息
delete 断点号 //删除指定断点
disable 断点号 //将断点设定为无效的,不加断点号,将所有断点设置为无效
enable 断点号 //将断点设定为有效的,不加断点号,将所有断点设置为有效
r(run) //运行程序
n(next) //单步执行
c (continue) //继续执行,直接执行到下一个断点处
s //进入将要被调用的函数中执行
finish //跳出函数
文件压缩与解压命令
tar 将文件打包或者解包
- c 创建包文件
- f 指定目标为文件而不是设备
- v 显示详细过程
- t 显示包中的内容而不释放
- x 释放包中的内容
- z GNU 版本新加的,使得 tar 有压缩和解压的功能
tar cvf 压缩包名 目标文件名 /打包命令生成 .tar文件
tar xvf 压缩包名 /解压 .tar文件 释放包中文件
gzip 对文件进行压缩或者解压
gzip +.tar /压缩 生成.tar.gz压缩包
gzip -d +.tar.gz 解压成 .tar包 / 分步
然后用 tar 命令再次解压