随笔分类 -  编程和调试技巧

摘要:一、MAKE中的自动变量: $@: 表示target的名字 $%: 仅当目标是函数库文件中,表示规则中的目标成员名。例如,如果一个目标是"foo.a(bar.o)",那么,"$%"就是"bar.o","$@"就是 "foo.a"。 $<: 表示第一个依赖条件的名字 $?: 表示所有比target更新的依赖条件的名字列表 $^: 表示所有依赖条件的名字,同时去除依赖列表中重复的条件 $+: 同$^的功能基本相同,但是他并不去除依赖列表中的重复条件 自动变量的另外一类扩展为,其中D为direc 阅读全文
posted @ 2011-07-19 20:27 OrangeAdmin 阅读(1573) 评论(0) 推荐(1) 编辑
摘要:1. 下载MinGW32到本地,以便能够使用gcc编译器以及和linux相关的一些库文件。2. 由于libmemcached的测试程序需要依赖memcached.exe本身,如果需要将memcached在win32下编译,需要修改部分和socket相关的code,而又考虑到仅仅是测试用例需要,因此决定通过修改configure(由autoconfig用于生成makefile的配置信息检查的shell文件)文件,以使libmemcached的编译不在依赖memcached。3. 为了完成第二步,需要手工修改configure文件,将如下shell代码注释掉,以便在执行./configure的时候 阅读全文
posted @ 2011-06-20 07:09 OrangeAdmin 阅读(3114) 评论(0) 推荐(2) 编辑
摘要:Cachegrind: Cachegrind通过模拟cpu的1,3级缓存,收集应用程序运行时关于cpu的一些统计数据,最后在将明细数据和汇总信息打印出来。 1. 以下是cpu统计数据的一些术语缩写: I cache reads (Ir, which equals the number of instructions executed), I1 cache read misses (I1mr) and LL cache instruction read misses (ILmr). D cache reads (Dr, which equals the number of memory read 阅读全文
posted @ 2011-06-05 21:54 OrangeAdmin 阅读(1700) 评论(0) 推荐(1) 编辑
摘要:一、Memcheck-tools 1. 可查找的错误类型: 1) Illegal read or write errors --read-var-info=<yes|no> [default:no],如果这个选项被打开,应用程序将运行的更慢,但是能够给出能多的错误细节。如下: --read-var-info=no ==15516== Uninitialised byte(s) found during client check request ==15516== at 0x400633: croak (varinfo1.c:28) ==15516== by 0x4006B2: ma 阅读全文
posted @ 2011-06-05 21:48 OrangeAdmin 阅读(3161) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示