c – 在Mac OS X上构建Google Breakpad

c – 在Mac OS X上构建Google Breakpad,第1张

概述我正在尝试基于主干版本782为Mac OS X构建 Google Breakpad作为移植应用程序的一部分. The Breakpad wiki指定应该构建client / mac / Breakpad.xcodeproj,如果我理解正确的话,它会产生一个包含动态链接库的Breakpad.framework.还有关于如何在Objective-C应用程序中使用它的示例代码,但所有这些似乎与在其他平台 我正在尝试基于主干版本782为Mac OS X构建 Google Breakpad作为移植应用程序的一部分.

The Breakpad wiki指定应该构建clIEnt / mac / Breakpad.xcodeproj,如果我理解正确的话,它会产生一个包含动态链接库的Breakpad.framework.还有关于如何在Objective-C应用程序中使用它的示例代码,但所有这些似乎与在其他平台上执行 *** 作的正常方式非常不同,包括使用pList和其他不属于的东西我的申请我更愿意跨平台做尽可能相似的事情.

例如,this似乎是firefox使用Breakpad的方式:

// include exception_handler.h from clIEnt/<platform>/handler,// using ... here for brevity#include "... exception_handler.h"...gExceptionHandler = new Google_breakpad::    ExceptionHandler(tempPath.get(),nsnull,MinIDumpCallback,#if defined(XP_WIN32)                     Google_breakpad::ExceptionHandler::HANDLER_ALL);#else                     true);#endif

在我的项目中,我们正在做同样的事情,只是链接到windows上的exception_handler.lib.似乎在linux上,Breakpad会生成相应的libbreakpad_clIEnt.a,它可以以相同的方式链接,但不能在Mac OS X上链接.如果我这样做

./configuremake

从breakpad根目录生成一个不包含异常处理程序的libbreakpad.a,以及不应该构建的libbreakpad_clIEnt.a.我可能很好地误解了使用Breakpad的正常方法以及在Mac上构建外部库的正常程序,所以任何帮助都是值得赞赏的.

如何在Mac OS X上构建libbreakpad_clIEnt.a?

解决方法 遗憾的是,Breakpad源代码中没有解决方案. XCode项目只是构建Breakpad框架,因为这是支持更多的客户端API.您可以使用自己的一组Makefile或您想要的任何构建设置来构建代码,就像firefox通过查看Mozilla makefile集一样:

http://mxr.mozilla.org/mozilla-central/source/toolkit/crashreporter/google-breakpad/src/common/Makefile.in

http://mxr.mozilla.org/mozilla-central/source/toolkit/crashreporter/google-breakpad/src/common/mac/Makefile.in

http://mxr.mozilla.org/mozilla-central/source/toolkit/crashreporter/google-breakpad/src/client/Makefile.in

http://mxr.mozilla.org/mozilla-central/source/toolkit/crashreporter/google-breakpad/src/client/mac/handler/Makefile.in

http://mxr.mozilla.org/mozilla-central/source/toolkit/crashreporter/google-breakpad/src/client/mac/crash_generation/Makefile.in

并收集CSRCS / CPPSRCS / CMSRCS / CMMSRCS中引用的文件集,并构建所有这些文件.

您可能还会在Breakpad issue tracker中提交一个错误,要求XCode项目也构建此静态库.这不是一个困难的补丁.

总结

以上是内存溢出为你收集整理的c – 在Mac OS X上构建Google Breakpad全部内容,希望文章能够帮你解决c – 在Mac OS X上构建Google Breakpad所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1242267.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-06
下一篇2022-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存