我正在Ubuntu 16.04上调试Eclipse Neon中的应用程序。我的项目要求我生成一个核心转储(包括调试过程中的所有内存(堆,堆栈,代码段等)),同时为该应用程序提供调试会话。
我尝试使用" gcore"在Eclipse中调试相同的应用程序时从终端。这给了我:
警告:过程32032已经跟踪过程32062
ptrace:不允许操作。
没有调试过程,你就无法做到这一点
该程序没有运行
gcore:未能创建core.32062
如果我使用" gcore"无需在Eclipse中调试应用程序,就会生成核心转储。
我没有找到从Eclipse中生成核心转储的选项......是否存在?哪里可以找到它?我可以添加一个允许我执行gcore" (类似)在调试应用程序时从Eclipse中执行命令?
谢谢!希望你能帮忙。
答案 0 :(得分:1)
同时我想通了。在Eclipse中,您可以在使用“Debug”透视图进行调试后选择gdb控制台选项卡。这个gdb控制台是一个交互式控制台(就像Eclipse Neon中的所有其他控制台一样)。在这里,您只需键入命令“generate-core-file”,它将在调试时核心转储进程的内存。
另外值得注意的是,有一个“暂停”按钮,您可以随时使用该按钮“暂停”您的应用程序。在“挂起”之后,您还可以使用gdb控制台中的“generate-core-file”创建核心转储。