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 ...
随机推荐
- fstream,ifstream,ofstream 详解与用法
fstream,istream,ofstream 三个类之间的继承关系 fstream :(fstream继承自istream和ofstream)1.typedef basic_fstream< ...
- Python3 官方文档翻译 - 5 数据结构
这章会更详细地描述了一些你已经学过的知识,同时添加一些新东西. 5.1 List进阶 下面是关于List的所有方法 list.append(x) 将元素添加至列表尾,相当于a[len(a):] = [ ...
- C# 基础知识 (三).主子对话框数值传递
在C# winform编程中,我们经常会遇到不同窗口间需要传递数值的问题.比如数据库的应用,主窗口填写内容num1,点击按钮,在弹出的子窗口显示对应num1值;或者在子窗口填写新注册用户名信息,在主窗 ...
- Codeforces Round #198 (Div. 2) 340C
C. Tourist Problem time limit per test 1 second memory limit per test 256 megabytes input standard i ...
- [置顶] 吃论扯谈---吃货和Office 365订阅的关系
什么事物都可以和吃联系起来,在女孩子穿裙子的季节这是一个悲伤的故事! 说明: :Office365是微软云计算产品之一,其采取订阅的方式,按人头*每月的方式付费,用户可以选择自己需要的服务 2:Off ...
- highchats与php结合生成动态统计图
series: [{ type: 'pie', name: 'Browser share', data: [ ['Firefox', 45.0], ['IE', 26.8], { name: 'Chr ...
- 暂时和永久改动oracle sysdate的默认输出格式
1.当前会话有效 alter session set NLS_DATE_FORMAT='YYYY-MM-DD:HH24:MI:SS'; 2.永久生效 sys用户登入后运行例如以下命令 然后重新启动数据 ...
- Android之TextView------LINK的点击事件
package com.TextHtml; import android.app.Activity; import android.content.Context; import android.os ...
- 在storyboard中设置控件的layerbordercolor
在SB中控件可以在SB中直接利用kvc 设置一些属性值,不如layerwidth等 但是不能更改和颜色有关的属性因为layerbordercolor是CGColor.通过为CALayer增加属性可以实 ...
- 写一方法计算实现任意个整数之和.在主调函数中调用该函数,实现任意个数之和。(使用params参数)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...