c语言,gdb
Get gdb call stack http://blog.csdn.net/zoufeiyy/article/details/1490241
Debugging with GDB - Examining the Stack http://web.mit.edu/gnu/doc/html/gdb_8.html
()准备: gcc -g
##########################################################################################
CFLAGS += -I.. -g
msview: msview.o
$(CC) $(CFLAGS) -o $@ msview.o $(LDFLAGS) $(LDLIBS)
##########################################################################################
# Standard object building
.c.o:
$(CC) $(CFLAGS) -g -c $< -o $@
##########################################################################################
# Standard object building for dynamic library components using -fPIC
.c.lo:
$(CC) $(CFLAGS) -g -fPIC -c $< -o $@
##########################################################################################
()break
$ gdb ./msview
(gdb) break unpack.c:
(gdb) run data
()查看调用堆栈
(gdb) bt
# msr_unpack (record=0x7ffff7ed2010 "000001D", ' ' <repeats times>, "\a\262", reclen=,
ppmsr=0x7fffffffe210, dataflag= '\001', verbose= '\000') at unpack.c:
# 0x0000000000417320 in msr_parse (record=0x7ffff7ed2010 "000001D", ' ' <repeats times>, "\a\262",
recbuflen=, ppmsr=0x7fffffffe210, reclen=, dataflag= '\001', verbose= '\000')
at parseutils.c:
# 0x000000000040311a in ms_readmsr_main (ppmsfp=0x7fffffffe1a0, ppmsr=0x7fffffffe210,
msfile=0x7fffffffe66b "data", reclen=, fpos=0x0, last=0x0, skipnotdata= '\001',
dataflag= '\001', selections=0x0, verbose= '\000') at fileutils.c:
# 0x0000000000401d6e in ms_readmsr (ppmsr=0x7fffffffe210, msfile=0x7fffffffe66b "data", reclen=-,
fpos=0x0, last=0x0, skipnotdata= '\001', dataflag= '\001', verbose= '\000') at fileutils.c:
# 0x00000000004017a2 in main (argc=, argv=0x7fffffffe3b8) at msview.c: 断点打在 msr_unpack,npack.c:
--msr_parse parseutils.c:
--ms_readmsr_main fileutils.c:
--main msview.c:
GDB调试器用法 https://i.cnblogs.com/EditPosts.aspx?postid=4778015
看内存: x
(gdb) x/10xb 0x400703 以十六进制方式查看内存地址0x400703开始10个字节的value。
参考:
1. 通过 GDB 学习 C 语言 http://blog.jobbole.com/87482/
2. Linux gdb设置和管理断点 http://www.cnblogs.com/rosesmall/archive/2012/04/13/2445527.html
3.Vim与GCC和gdb完美组合 http://www.cnblogs.com/Shirlies/p/3278937.html
4. GDB使用基础(转载) http://bbs.21ic.com/blog-678712-84132.html
c语言,gdb的更多相关文章
- C语言-gdb调试工具详解
回车 重复上一次命令 产生可调试的可执行文件:gcc -g main.c -o main, 必须加上-g选线, 表示在可执行文件中加入源文件信息, 但并不是将源文件嵌入可执行文件, 所以在调试时必须保 ...
- GDB调试器
/*this project used for gdb debug c programs*//*At first,using compile command turn out the executab ...
- GDB之调试器用法
GDB 完成的作用: 启动程序,可以按照工程师自定义的要求随心所欲的运行程序 让被调试的程序在工程师指定的断点处停住,断点可以是条件表达式 当程序被停住时,可以检查此时程序中所发生的事,并追索上文 动 ...
- python调试方法
之前调试python程序都是用print参数,感觉有点弱爆啊,最近发现python也有类似C语言gdb的工具pdb,记录下pdb的使用方法和心得. 先找了段简单的测试程序: 复制代码 !/usr/bi ...
- 使用GDB调试Go语言
用Go语言已经有一段时间了,总结一下如何用GDB来调试它! ps:网上有很多文章都有描述,但是都不是很全面,这里将那些方法汇总一下 GDB简介 GDB是GNU开源组织发布的⼀一个强⼤大的UNIX下的 ...
- GDB调试D语言
GDB7.2后开始支持对D语言的调试 GUI前端 http://beej.us/guide/bggdb/#compiling GDB教程 http://blog.csdn.net/haoel/arti ...
- windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境
windows下用eclipse+goclipse插件+gdb搭建go语言开发调试环境 http://rongmayisheng.com/post/windows%E4%B8%8B%E7%94%A ...
- Linux环境下使用gcc编译,gdb反汇编C语言程序
使用虚拟机 VMware Workstation 10 Linux环境:Ubuntu 14.04 LTS Server amd64 我把过程截图如下. 首先是hello world程序: 备注: ...
- 解决Linux c语言运行时候“段错误 (核心已转储)”问题-采用gdb 解决
编译没有警告,没有错误,运行就打印 段错误 (核心已转储) 网上找了一下,都是各种问题,都推荐用gdb 调试解决,咱也来趁机学习gdb一下. gcc+gdb)输入命令行 运行 sudo apt-g ...
随机推荐
- 将string当字节流使
string是C++标准定义的字符串类,它不但支持文本,而且支持二进制字节流.给一个string变量赋值有多种方法: 1) 拷贝构造函数 2) 等号赋值函数 3) append成员函数 4) push ...
- javascript使用消息框
之前很多地方都用过alert,它的作用是弹出一个警告框,我们调用的方法是alert("输入的内容");其实更正确的写法是 window.alert("输入的内容" ...
- linux配置nfs服务
简单介绍: unix/linux系统一种远程文件文件夹共享的服务,能够把某一个远程的文件文件夹共享到本地,进而像操作本地文件一样,操作这个远程的文件夹. 比如:a主机作为服务端,共享出来test1这个 ...
- HDU 4825 Xor Sum 字典树+位运算
点击打开链接 Xor Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 132768/132768 K (Java/Others) ...
- ceph源码之一
转自于:http://blog.csdn.net/changtao381/article/details/8698935 一.概述: 其结构如下:在src 里, 网络通信: msg 里面 包括了网 ...
- 【Hibernate】set排序
使用hibernate进行一对多操作的时候,普遍使用HashSet进行操作.但是HashSet是无序集合,对此可以使用TreeSet进行排序. 1.将HashSet改为TreeSet private ...
- 【Android】ScrollView+GridView 显示问题
在使用Android的ScrollView里面嵌套GridView时,设置android:layout_height="wrap_content"属性,运行界面的效果不会出现全部数 ...
- Codeforces Round #316 (Div. 2A) 570A Elections
题目:Click here #include <bits/stdc++.h> using namespace std; typedef long long ll; const int IN ...
- uboot编译: uboot编译配置和编译过程
jz2440: 韦东山Linux视频第1期_裸板_UBoot_文件系统_驱动初步\第09课第2节 u-boot分析之Makefile结构分析.WMV <嵌入式linux完全开发手册> 15 ...
- BZOJ 2157: 旅游( 树链剖分 )
树链剖分.. 样例太大了根本没法调...顺便把数据生成器放上来 -------------------------------------------------------------------- ...