利用gdb来检查可执行文件的问题
起因
在最近的一次用c++编写的程序编译后,发现总是会出现segment错误的问题。摸不着头脑。
总得看看是什么导致的问题吧。
那就用gdb,至少可以知道大概的错误原因。
过程
- linux系统上直接打开gdb
- 输入file /path/to/executable
- 输入 run
- 输入 bt
- 检查错误反馈,一般来说这个可以直接定位到编写的代码的错误的行
- 输入 quit
结果
返回到的是一个调试信息,非常的精确。
能够写代码是一回事,知道错误的原因是一回事,能够修改代码解决错误,又是另外一回事了。
写编译器的是牛人,对编译后的代码进行debug的工具更是。