Linux之gdb与Makefile的应用及命令。

今天我们来看一看Linux中的gdb调试和Makefile命令。

一。gdb:调试器。注:要用gdb调试,前提是在源代码生成时要加上-g选项才能应用,否则会失败。

它的基本命令有:

l行号:显示从第几行开始,屏幕每次只能显示10行。l函数:显示函数的源代码。

r:运行程序。   n:单条执行。  s :会进入函数调用。

b 行号:设置断点在第几行。   i b :查看断点信息。

whatis:打印类型。   b t:打印函数栈。   回车:执行上一次的命令。 p:打印变量值。

b 行号  条件:设置断点并规定当前程序要满足的条件。

ulimit -a:查看限制。

在这里举一个例子来展示gdb的好处。比如:当你在Linux中执行一个有错的程序,在运用gdb能快速的找到你错的地方,十分方便。只需要我们调试好core程序就行。

方法:

(1)ulimit -c unlimited

(2)gcc -g o.c

(3)./a.out

(4)gdb a.out core.123567

这样就能查看错误了。

二。Makefile:项目自动化构建工具。

1 .PHONY: clean                                                 //标记后面的命令一定执行。
  2 main : main.o add.o sub.o mul.o                    //目标文件后面需要的依赖文件。
  3     gcc main.o add.o sub.o mul.o -o main
  4 
  5 main.o : main.c                               //将main.c转换成main.o,后面一样。
  6     gcc -c main.c -o main.o
  7 
  8 add.o : add.c
  9     gcc -c add.c -o add.o
 10 sub.o : sub.c
 11     gcc -c sub.c -o sub.o
 12 mul.o : mul.c
 13     gcc -c mul.c -o mul.o
 14 clean:
 15     rm -rf *.o main                   //清除所有.o文件,十分方便。


然后如图输入make命令执行,产生所有的.o文件,在输入make clean 命令清除它们。

另外也可以简写:

%.o : %.c

       gcc -c $< -o $@

%.o:表示所有.o文件,$<:表示第一个依赖文件。 $@:代表目标文件。例如:

 pb : pb.o
  2     gcc -c $< -o $@
  3 %.o : %.c
  4     gcc -c $< -o $@
  5 clean : 
  6     rm -rf *.o
  7 

这样写就十分方便了。


以上就是全部内容了,希望大家看完之后可以多多练习,这样才能熟练掌握。

猜你喜欢

转载自blog.csdn.net/ymk1507050118/article/details/80706901
今日推荐