Memory gdb下的错误消失(内存相关?)

Memory gdb下的错误消失(内存相关?),memory,gdb,malloc,Memory,Gdb,Malloc,我有一个程序无法执行内存分配 gsldata=gsl_matrix_calloc(maxdim,maxdim); 这是一种常见的内存分配。 在gdb下,程序运行良好。 我用谷歌搜索了一下,问题似乎是 如果在gdb下运行程序时bug消失,那么可能 可能是因为gdb在默认情况下禁用了上的地址随机化 平台,如gnu/Linux,它们为独立程序实现了这一点。 使用set disable randomization off尝试重现这种难以捉摸的结果 虫子 问题是,我不能禁用随机化,因为它“在这个平台上是

我有一个程序无法执行内存分配

gsldata=gsl_matrix_calloc(maxdim,maxdim);
这是一种常见的内存分配。 在gdb下,程序运行良好。 我用谷歌搜索了一下,问题似乎是

如果在gdb下运行程序时bug消失,那么可能 可能是因为gdb在默认情况下禁用了上的地址随机化 平台,如gnu/Linux,它们为独立程序实现了这一点。 使用set disable randomization off尝试重现这种难以捉摸的结果 虫子

问题是,我不能禁用随机化,因为它“在这个平台上是不允许的”。
那么,解决这个问题的可能方法是什么?

您是否尝试过purify或其他与内存相关的工具?我相信大多数这样的问题都可以用这样的工具来解决。是的,我会试试看。谢谢!