Chinaunix
标题:
替换malloc
[打印本页]
作者:
suncrash
时间:
2005-12-27 12:05
标题:
替换malloc
这个问题在hp-unix版发了,但是没有人明白,可能发到这里更合适些
为了检查内存泄露问题,我下载了一个malloc的代码,我如何在不改动代码的情况下,让编译器使用我的函数,而不使用stdlib.h里面的函数
我的系统是hp11
作者:
aero
时间:
2005-12-27 12:21
然后呢?说完啊。
作者:
suncrash
时间:
2005-12-27 12:43
标题:
回复 2楼 aero 的帖子
然后就是自己在新的malloc代码里面计数器阿,一运行就知道了
作者:
aero
时间:
2005-12-27 12:47
where is your code?
作者:
albcamus
时间:
2005-12-27 13:48
如果是gcc,如果非这么干不可的话,如果非让我这么干的话,我会用-rpath选项,指定自己的一个库,里边实现自己的malloc和free。
听说dmalloc可以检查内存泄漏,没用过。
作者:
cobras
时间:
2005-12-27 15:58
LZ,为什么要替换呢,用另外一个名字不行吗?如果非要有同一个名字,就用宏吧
作者:
ktdid
时间:
2005-12-27 16:05
直接把你的malloc/free源文件或者库文件包含进项目一起make即可
linker只有在给定的obj文件不能解决外部引用的时候才会去标准库里找
作者:
依赛特小子
时间:
2005-12-27 16:18
new 好!可以运算符重载!
作者:
gooderfeng
时间:
2005-12-27 16:30
不一定叫malloc,换个名字,省很多力气
作者:
给个理由先
时间:
2005-12-27 16:42
自己提前定义malloc函数的宏标志,就不会包函系统的malloc了!!
作者:
suncrash
时间:
2005-12-29 12:13
原帖由
cobras
于 2005-12-27 15:58 发表
LZ,为什么要替换呢,用另外一个名字不行吗?如果非要有同一个名字,就用宏吧
因为代码量不小,可能有一万行左右,很多地方使用了malloc,一个一个替换非常麻烦,而且有很多公用的模块,改动容易造成版本问题,所以我就想不改动代码
作者:
cobras
时间:
2005-12-29 12:22
那宏不就解决了吗?
将下面的宏定义加入公共头文件中
#define malloc u_malloc
作者:
Alligator27
时间:
2005-12-29 22:03
LD_PRELOAD=libmymalloc.so
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2