sentry-native 在 windows 平台上搭建

官方文档:https://github.com/getsentry/sentry-native 

虽说官方文档有搭建步骤,奈何我用 git bash 试了 n 遍,最终都会报一大堆错误,白白浪费了我快一个下午的时间

最终找到了一位大哥的博客,里面也介绍了他遇到的坑,跟随他的方法,编译成功了

遂把一些更为详尽的步骤记录下来,供有 sentry 搭建需求的友友参考

sentry-native 版本:0.4.15

  1. 打开 CMake Gui 程序,千万不用要 command 窗口编译,一堆错误
  2. 输入源文件路径和输出的编译路径,注意:如果你的项目是 x86 的话,在填输出的编译路径时会提醒你是否选择 win32
  3. 先点击页面左下角的 Configure 按钮,会自动生成相应的选项
  4.  sentry-native 在 windows 平台上搭建

  5. 改下 SENTRY_BACKEND 的 Value 为 breakpad,并且不要勾选 SENTRY_BUILD_SYSTEM

  6. sentry-native 在 windows 平台上搭建

     

     

     

  7.  

     最后可以再点击 Configure,没啥问题后点击 Generate 生成 breakpad 的工程文件,如下

  8. sentry-native 在 windows 平台上搭建
  9. 确定生成了 breakpad 的工程文件,在 CMake Gui 页面上选择打开 Project 的工具,我这里使用的 vs2019
  10. sentry-native 在 windows 平台上搭建

     

     

  11. 使用 Release 版本编译后,会发现两个错误,将它们注释即可
  12. sentry-native 在 windows 平台上搭建

     

     

  13. sentry-native 在 windows 平台上搭建

     

     

  14. 再重新编译就 OK 了,生成的 lib 文件和 dll 文件在项目文件下
  15. sentry-native 在 windows 平台上搭建

     

     

  16. 接下来就可以在你自己的项目中配置 sentry 的头文件和库文件,注意在配置完相关路径后,还是需要添加静态链接才可以
#pragma comment(lib, "sentry.lib")

  

 注意:如果是使用 breakpad 编译的 dll,在程序崩溃时是无法抓到错误日志的,需要使用 crashpad 创建 dll

编译过程:我们需要先在 crashpad_build 文件中打开工程,编译出 sentry_native 项目需要的静态文件库

sentry-native 在 windows 平台上搭建

 

 

最后再打开 sentry_native.sln

sentry-native 在 windows 平台上搭建

 

 在 crashpad.sln 的编译过程中会出现很多  warning C4819 错误,我这边的解决方法是把错误的源文件的编码格式使用 notepad++ 一一改成 UTF8-BOM 即可解决


补充:

对于之前介绍的错误,特别是 sentry 附带的 example 在编译后会因字符报错,这边我们可以取消勾选 SENTRY_BUILD_EXAMPLES 和 SENTRY_BUILD_TESTS

sentry-native 在 windows 平台上搭建

 

 对于 warning C4819 错误,因为涉及到的文件太多了,我们可以在编译器中将警告视为错误改为否

sentry-native 在 windows 平台上搭建

 

 如果需要编译静态库,建议按照下面这个设定来,这样库跑起来不会依赖 VC 库了

sentry-native 在 windows 平台上搭建

 

 sentry-native 在 windows 平台上搭建

 

 sentry-native 在 windows 平台上搭建

 

 

sentry-native 在 windows 平台上搭建

 

原文链接: https://www.cnblogs.com/strive-sun/p/15937522.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    sentry-native 在 windows 平台上搭建

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/404553

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年4月25日 下午4:37
下一篇 2023年4月25日 下午4:37

相关推荐