原文地址:http://sujiaqiuxiao.blogbus.com/logs/31593502.html
程序开始移植到LINUX底下,一直是window调节,再在LINUX底下编译运行,今天却发现有些错误,windows底下并不报
错,linux底下却没办法跑完,只好开始用GDB调试,0
0,一直很讨厌LINUX底下的编程和调试,因为要记很多参数,8过这段移植过程中,逐渐熟悉起来了,也就没有之前那么反感了,嘛,习惯了果然就好了,
唉,就看你想不想养成习惯。
嘛,以后会经常记录些关于编程方面的东西吧,一遇到问题就百度,结果这么久了,发现有很多问题都是以前碰到过
的,昨天折腾了半响的类型转换问题,后来还是问了便便才解决的,因为上次他也碰到了类似的问题,结果后来再修改之前的一个程序的时候,才发现早在那个程序
我就碰到了这个问题并且解决了,我居然一点印象都没有,OTZ。SO,还是做好总结比较好,以后也不用花力气再去找了。
转载:
在命令行上键入 gdb 并按回车键就可以运行 gdb 了, 如果一切正常的话, gdb 将被启动并且你将在屏幕上看到类似的内容:
[color="#0066ff"]GDB is free software and you are welcome to distribute copies of it
under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for details.
GDB 4.14 (i486-slakware-linux), Copyright 1995 Free Software Foundation, Inc.
(gdb) 当你启动 gdb 后, 你能在命令行上指定很多的选项. 你也可以以下面的方式来运行 gdb : [color="#0066ff"]gdb 当你用这种方式运行 gdb , 你能直接指定想要调试的程序. 这将告诉gdb 装入名为 fname 的可执行文件. 你也可以用 gdb 去检查一个因程序异常终止而产生的 core 文件, 或者与一个正在运行的程序相连. 你可以参考 gdb 指南页或在命令行上键入 gdb -h 得到一个有关这些选项的说明的简单列表.
为调试编译代码(Compiling Code for Debugging) 为了使 gdb 正常工作, 你必须使你的程序在编译时包含调试信息. 调试信息包含你程序里的每个变量的类型和在可执行文件里的地址映射以及源代码的行号. gdb 利用这些信息使源代码和机器码相关联.
在编译时用 -g 选项打开调试选项.