【发布时间】:2012-06-11 15:07:48
【问题描述】:
我有一个在 Windows 7 上的 Cygwin 中运行的程序,它总是导致分段错误。这不是我的程序,但我需要帮助,开发人员要求我至少提供一个堆栈跟踪
我的 Cygwin 变量如下所示:error_start=c:/cygwin/bin/dumper.exe。我也在执行程序之前运行了这个命令:ulimit -c unlimited。这是我可以通过谷歌(包括this 问题)找到的唯一两个要求,以便在分段错误后从 Cygwin 获取某种信息。
但是,当我运行程序时,它仍然会打印消息Segmentation fault,并且不会打印 a.exe.stackdump 或任何其他转储文件,也不会启动转储程序实用程序。有关如何获取所需信息的任何建议?
【问题讨论】:
-
它必须被编译以转储核心(例如
make CDEBUGFLAGS=-g ...)。如果您没有获得核心文件,请检查您的限制并确保您的coredumpsize未设置为零(例如limit)。您可以通过limit coredumpsize unlimited将 coredumpsize 设置为无限制 -
如果我用 Visual Studio 编译,你知道如何设置吗?
-
如果是 Windows 应用,请阅读:stackoverflow.com/questions/4672572/… 否则,我不知道如何使用 Visual Studio。