Linux下的调试器与文件管理器
来源:互联网 发布:unity3d塔防游戏素材 编辑:程序博客网 时间:2024/05/21 06:46
调试器(GDB)GNU发布的一款功能强大的程序调试工具。
GDB主要完成下面三个方面的功能:
1、 启动被调试程序;
2、 让被调试的程序在指定的位置停住;
3、 当程序被停住时,可以检查程序的状态-变量值;
以假定文件test.c为例,说明gdb的功能:
[root@localhost GDB]# ls
demo test.c
[root@localhost GDB]# gcc -g test.c -otext.exe
[root@localhost GDB]# ls
demo test.c text.exe
[root@localhost GDB]# gdb te
test.c text.exe
[root@localhost GDB]# gdb text.exe
GNU gdb Red Hat Linux (6.5-25.el5rh)
Copyright (C) 2006 Free SoftwareFoundation, Inc.
GDB is free software, covered by the GNUGeneral Public License, and you are
welcome to change it and/or distributecopies of it under certain conditions.
Type "show copying" to see theconditions.
There is absolutely no warranty forGDB. Type "show warranty" fordetails.
This GDB was configured as"i386-redhat-linux-gnu"...Using host libthread_db library"/lib/libthread_db.so.1".
(gdb) run
Starting program: /root/Desktop/1112/GDB/text.exe
result = 5050
命令选项介绍:
1、-g:产生调试信息;
2、gdb “可执行文件”;
3、run:执行程序;
4、list:查看源代码;
5、quit:退出gdb;
6、break “行号”:设置断点;
7、info break:查看断点信息;
8、delete:删除断点;
9、step:单步执行,会进入子函数;
10、next:单步执行,不会进入子函数;
11、print 变量名:可显示结果;
12、continue:运行到最后;
13、finish:结束当前函数;
Make工程管理器:
优点:1、使用方便;2、调试效率高;(提高代码的维护性、可读性)
Makefile:make工程管理器是完全根据makefile文件中的编译规则命令进行工作的。Makefile文件有以下三项基本内容组成:
1、 需要生成目标文件;(targetfile)
2、 生成目标文件所需要的依赖文件;(dependency file)
3、 生成目标文件的编译规则命令行;(command)
最强大的功能:实现批处理(脚本文件也有这个批处理功能)
以以下程序为例简要说明简单makefile文件的制作与使用
[root@localhost test]# ls
add.c div.c main.c makefile mul.c sub.c
[root@localhost test]# cat *.c
int add(int a, int b)
{
return a + b;
}
int div(int a, int b)
{
return a / b;
}
#include <stdio.h>
int main()
{
printf("add = %d\n",add(6,3));
printf("sub = %d\n",sub(6,3));
printf("mul = %d\n",mul(6,3));
printf("div = %d\n",div(6,3));
return 0;
}
int mul(int a, int b)
{
return a * b;
}
int sub(int a, int b)
{
return a - b;
}
[root@localhost test]# cat makefile
cal:add.o sub.o div.o mul.o main.o
gcc add.o sub.o div.o mul.o main.o -o cal
add.o:add.c
gcc -c add.c
sub.o:sub.c
gcc -c sub.c
div.o:div.c
gcc -c div.c
mul.o:mul.c
gcc -c mul.c
main.o:main.c
gcc -c main.c
.PHONY:clean
clean:
rm -f *.o cal
简单的语法规则:
目标文件:依赖文件
指令
.PHONY:定义假目标;
真目标与假目标:真目标真正的编译出可执行文件,假目标仅仅是一串指令;
一个大工程的makefile文件有三种类型:
1、 最顶层:总控makefile,一般在主目录下;
2、 功能目录:功能目录makefile;
3、 Scripts目录:头文件makefile;
- Linux下的调试器与文件管理器
- Linux下的文件编译与调试
- linux下开启管理员权限的文件管理器
- Linux与Windows双系统下的Grub引导管理器安装
- Linux与Windows双系统下的Grub引导管理器安装
- Linux与Windows双系统下的Grub引导管理器安装
- Linux与Windows双系统下的Grub引导管理器安装
- linux文件管理器的不足
- Linux下调试core文件的方法
- Linux下调试core文件的方法
- linux下core 文件的调试方法
- linux下core文件的调试
- Linux工程管理器和GDB调试器
- 工程管理器与GDB调试器
- gdb调试器与make工程管理器
- Linux下的编译与调试工具
- linux下coredump的配置与调试
- linux下gdb的安装与调试
- UIDynamicAnimator无效问题
- Qt 4.8.5 Windows/Ubuntu下x64编译
- shell脚本中比较并输出最大值
- 《寻找下一个独角兽》天使投资8字箴言:看势、识人、论术、实战
- Ubuntu 12.04安装最新版VLC2.0.2
- Linux下的调试器与文件管理器
- hdu 5969 最大的位或
- iframe 跨域
- AtomicIntegerArray
- ajax json
- Linux下常用文件解压(包括RMP、DEB的解压方法)
- 【codevs 1029】遍历问题
- linuxh中wait和waitpid 的区别
- C语言程序 写出100~999间的水仙花数