0

我刚刚登陆 SunOS:

$ uname -a
SunOS sunfi95 5.9 Generic_122300-13 sun4u sparc SUNW,Sun-Fire-880

并拥有 Sun 工作室:

$ CC -V
CC: Sun C++ 5.8 2005/10/13

如何在代码中找到 memleaks?(在这种情况下,dbx 不是一个选项)。Valgrind 在 sparc 系统上不起作用,我想到的唯一一个解决方案是使用一些智能库,它会重载 new 并删除并计算它们被调用的次数。有人知道BSD上的一些东西,比如许可证吗?

4

4 回答 4

4

在 Sun OS 上,您可以使用Purify,或者尝试将您的程序移植(通常您也会移植泄漏)到 Unix/Linux 并使用valgrind来查找泄漏。

于 2009-09-02T08:45:19.023 回答
2

DTrace 对于了解 Solaris 应用程序中发生的情况非常有用。

以下是 Sun 提供的如何使用它的示例。

于 2009-10-12T18:15:37.630 回答
1

我认为有免费软件库,但我们在 Solaris 上使用 Purify 效果很好。

于 2009-09-02T08:39:34.700 回答
1

您还可以使用名为cppcheck的应用程序来查找内存泄漏以及许多其他问题。这是一个免费/开源产品。

我从未在 SunOS 或 Sparc 机器上使用过它,但源代码可用,您可以尝试构建它。我不确定引擎盖下发生了什么,但我不明白为什么你不能在 SunOS Sparc 机器上构建它。

于 2009-10-12T18:18:03.990 回答