问题标签 [google-breakpad]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gyp - 如何构建谷歌breakpad
我完全不知道如何构建谷歌的breakpad。有一个 sln 文件,但它依赖于一个似乎没有关联 sln 的库。它似乎使用了一种叫做 gyp 的东西,我还没有弄清楚如何开始工作。我试过了
这只是给出了以下错误
我无法理解。我似乎也找不到任何文档。任何帮助,将不胜感激。
build - 如何为 Windows 构建 google google-breakpad?
我正在尝试为 Windows 构建 google breakpad。我不明白。我尝试为 Windows 安装 autoconf 和 m4,这似乎可以工作。但是跑步
结果是
在执行脚本几秒钟后。
我搜索了 Visual Studio 解决方案文件,但自修订版 581 以来它们已被删除。
所以我找到了相关的帖子 How to build google breakpad。
但是我如何安装gyp?它需要什么先决条件?或者是否有人为 google-breakpad 的所有部分提供工作(VC2005)sln 文件?谁能给我一步一步的描述如何构建它?
visual-studio-2008 - 将 Qt 应用程序链接到 Google Breakpad 时出现未解决的符号错误
我正在尝试将我的 Qt 应用程序静态链接到 Windows 下的 Google Breakpad,但我总是遇到未解决的符号错误。我正在使用 qmake 和 VC++2008,我的项目文件似乎有问题。似乎链接器忽略了我的 LIBS 规范,因为无论我是否将库添加到 LIBS,我都会收到错误消息。
我使用以下方法编译了 Breakpad:
Google Breakpead 在 src\processor\test_app.cc 中包含一个示例。如果我按照建议编译它,一切都会好起来的:
但是,如果我尝试使用类似的 .pro 文件使用 qmake 构建它,我会得到相同的未解决符号错误。这是我使用的 .pro 文件:
构建它:
我在 .pro 文件中缺少什么?
提前致谢。
c++ - 将 std::exception 转换为 EXCEPTION_POINTERS
我可能完全误解了如何使用 Google Breakpad API,如果是这样的话,我愿意接受评论/建议/粗鲁的言论。我正在尝试调用以下 C++ 函数:
我有一个参考std::exception
:
(eh_
是一个google_breakpad::ExceptionHandler
。)
我在里面放什么??????
背景:这是必要的(我认为)的原因是 Qt 不支持在事件处理程序中引发的异常。它不会正确传播,因此 Breakpad 生成的 minidump 完全没有用,因为异常的实际上下文已经丢失。相反,您必须捕获所有异常并在覆盖中处理它们QApplication::notify()
,这就是我想要做的。在出现异常的情况下,我想立即为该异常编写我的 minidump(这听起来像是WriteMinidumpForException
会做的),然后通知用户并退出应用程序。但我不确定将什么作为EXCEPTION_POINTERS*
参数传递。
c++ - 在 Mac OS X 上构建 Google Breakpad
我正在尝试为 Mac OS X 构建Google Breakpad,作为移植应用程序的一部分,基于主干修订版 782。
Breakpad wiki指定应该构建 client/mac/Breakpad.xcodeproj,如果我理解正确,它会生成一个包含动态链接库的 Breakpad.framework。还有关于如何在 Objective-C 应用程序中使用它的示例代码,但所有这些似乎与在其他平台上似乎是正常的做事方式非常不同,包括使用 plist 和其他不属于的东西我的申请。我更愿意跨平台做尽可能相似的事情。
例如,这似乎是 Firefox 使用 Breakpad 的方式:
在我的项目中,我们正在做同样的事情,只是exception_handler.lib
在 Windows 上链接。似乎在 Linux 上,Breakpad 生成了一个libbreakpad_client.a
可以以相同方式链接的对应文件,但在 Mac OS X 上却不行。如果我这样做
从 breakpad 根目录libbreakpad.a
生成不包含异常处理程序的 a,以及不应该构建的 libbreakpad_client.a。我很可能误解了使用 Breakpad 的正常方式以及在 Mac 上构建外部库的正常程序的任何内容,因此感谢您的帮助。
如何libbreakpad_client.a
在 Mac OS X 上构建?
c++ - Google Breakpad 示例
有没有人有任何谷歌breakpad配置的例子?我可以很好地构建它,但是,文档有限。我想查看示例,例如如何修改崩溃报告的发送位置。
qt - 带 Breakpad 的 Qt 创建者
我想用我用 Qt creator 创建的 Qt 应用程序部署一个崩溃处理程序。经过一番摸索之后,Google 的 Breakpd 似乎会完全按照我的需要去做,但是这方面的教程很简单。因此,我有许多问题希望能得到解答。
- 如何在 Qt creator 中创建带有调试信息配置的版本?
- 我已按照此处的示例进行操作,并且能够在 Windows 上创建 .dmp 文件。
- 如何使用 Breakpad 自动将该 dmp 文件传输给我?
- 如何使用 Breakpad 读取该文件?
目前我正在 Windows 上部署我的应用程序,因此我能够在 Visual Studios 2008 中打开 .dmp 文件,并且只有在我以调试模式构建应用程序时才能查看调试信息(因此我获得了 .pdb 文件)。但是,我最终希望它能够在多个平台上工作,所以我想知道 Breakpad 提供了哪些工具来在 Visual Studios 之外创建堆栈跟踪?
Breakpad 上的教程看起来很简单,所以如果那里有一个很好的教程也会有所帮助,我很乐意阅读它。
谢谢
好的,我想我已经找到了 1 的答案。如果您将以下几行添加到您的 .pro 文件中(仅用于发布),您将使用调试信息构建发布
我仍然需要弄清楚 3 和 4。任何帮助都会很有用。
windows - 使用 breakpad 创建 CLR 转储
我正在使用 Google Breakpad 在我的 Windows 应用程序崩溃时为其生成崩溃转储。
我的应用程序将 C++ 本机代码与 C# CLR 代码混合在一起。breakpad 生成的转储不包含任何 CLR 信息。
是否可以使用 Breakpad 打开 CLR 转储?创建 CLR 转储需要哪些 API?