嵌入式系统软件设计VxWorks【第8章1】gcc gdb.ppt

嵌入式系统软件设计VxWorks【第8章1】gcc gdb.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式系统软件设计VxWorks【第8章1】gcc gdb

gcc示例 gcc -E main.c main.i 观察#include指令和#define指令的转换 ar 管理程序库 归档文件(archive)的创建,修改和文件提取程序; archive文件是一个包含一组其他文件的文件,以一定结构组织这些文件,使得可以从archive文件中提取出单个文件; 原文件的内容,访问许可标志,时戳,属组等信息都保存在archive文件中,并能在文件提取时恢复; ar 命令格式 ar [options] archive [member…] archive 归档文件名 member 加入归档文件的文件名 命令行选项 r 将member文件插入archive中,如果使用v修饰r,即vr一起用,代表以替换的方式将member文件插入archive中。 t显示archive的内容列表 ar 例子 arDemo 创建一个程序库,包含command.o, display.o和keyboard.o ar rv libutil.a command.o display.o keyboard.o 列出程序库libtuil.a的成员 ar t libutil.a gcc示例 例子libDemo 计算随机数平均值的软件,其中main.c是主程序;randutil.c包含随机数计算程序;display.c包含结果输出程序。 要求将randutil.c和display.c中的程序放在一个函数库libutil.a中。 主程序main.c使用该函数库最终编译链接成可执行程序compute。 gdb示例4 * * * * * * * * * * (gdb) watch isum 100 Hardware watchpoint 4: isum 100 (gdb) disable 2 (gdb) disable 3 (gdb) info breakpoints Num Type Disp Enb Address What 2 breakpoint keep n 0x080484b3 in main at main.c:18 breakpoint already hit 1 time 3 breakpoint keep n 0in initRand at randutil.c:9 breakpoint already hit 1 time 4 hw watchpoint keep y isum 100 gdb示例4 (gdb) c Continuing. Hardware watchpoint 2: isum 100 Old value = 0 New value = 1 main () at main.c:16 16 for (i = 0; i ITERATIONS; i++) (gdb) print i $1 = 23 (gdb) print isum $2 = 106 gdb示例6 单步执行 next step next (gdb) n 17 isum += getRand(10); (gdb) 16 for (i = 0; i ITERATIONS; i++) (gdb) 17 isum += getRand(10); gdb示例6 单步执行 next step step (gdb) s getRand (max=10) at randutil.c:23 23 randvalue = (int)((float)max * rand() / (RAND_MAX + 1.0)); (gdb) s 24 return randvalue; gdb示例7 自动显示感兴趣的变量 display variable_name (gdb) n main () at main.c:16 16 for (i = 0; i ITERATIONS; i++) (gdb) display isum 1: isum = 108 (gdb) n 17 isum += getRand(10); 1: isum = 108 (gdb) n 16 for (i = 0; i ITERATIONS; i++) 1: isum = 112 gdb示例7 (gdb) undisplay isum Arguments must be display numbers. (gdb) info display Auto-display expressions now in effect: Num Enb Expression 1: y isum (gdb

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档