我用-fsanitize=address
编译一个程序,但得到错误
==48458==ASan runtime does not come first in initial library list; you should either link runtime to your application or manually preload it with LD_PRELOAD.
添加LD_PRELOAD
后,它工作正常,但如果我使用LD_PRELOAD
我需要-fsanitize=address
编译器标志以及?
在添加LD_PRELOAD
之后,我还应该用-fsanitize=address
标志编译我的程序吗?
1条答案
按热度按时间omqzjyyz1#
是的,
-fsanitize=address
在代码中插入了额外的检测,用于检测内存错误。你肯定想留着它