GDB使用shell命令和make命令
GDB 中可以使用 shell 命令,也就是说可以实现 shell 中的功能,这样可以极大的提高我们调试程序的效率。GDB 中还可以使用 make 命令,这样就可以不退出 gdb 调试界也可以重新编译程序。
使用shell命令
gdb 中可以使用 Linux 中的 shell 命令,需要使用 gdb 中的 shell 命令实现 ,使用方法如下:shell <command string>
<command string>表示的是 shell 中的命令,例如:
(gdb) shell ls
test test.c
(gdb) shell cat test.c
#include <stdio.h>
#include <stdlib.h>
void func()
{
char *sp = "hello";
free(sp);
}
int main(void)
{
func();
return 0;
}
(gdb) shell cd .. && ls
09 test
注意:调用 Linux 的 shell 来执行 <command string>,环境变量 SHELL 中定义的 Linux 的 shell 将会被用来执行<command string>,如果 SHELL 中没有定义,就会使用 Linux 标准。
使用 make 命令
在 gdb 中执行 make 命令来重建自己的程序,make 命令的使用方法如下:make <make-args>
其中 <make-args>表示参数,例如:
(gdb) shell ls
makefile test.c
(gdb) make
cc -c -o test.o test.c
cc -g -o test.o test
(gdb) make clean
rm -rf *.o test
(gdb) shell make
cc -c -o test.o test.c
cc -g -o test.o test
注意:使用 make 命令的前提是当前目录下有 Makefile 文件,并且 Makefile 文件记录了程序重建的规则命令,如果没有 Makefile, make 命令就不会执行。
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算