• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

fatal error: unexpected signal during runtime execution [signal SIGSEGV: segmentation violation

武飞扬头像
*进阶的Laven*
帮助1

错误堆栈:

fatal error: unexpected signal during runtime execution
[signal SIGSEGV: segmentation violation code=0x1 addr=0x27 pc=0x7fc8a8a92932]

runtime stack:
runtime.throw({0x66d1b9, 0x7fc880f03a50})
        /usr/local/go/src/runtime/panic.go:1198 0x71
runtime.sigpanic()
        /usr/local/go/src/runtime/signal_unix.go:719 0x396

。。。

展示了一堆,就不复制那么多了

目标:

通过go语言实现一个http server,同时通过CGO封装了一个标准C的.so动态库去调用C 静态库.a文件

问题分析:

每次调用.a的某个函数时就会出现上边的错误

a.直接用C demo 调用.a也没问题,排除了.a的bug

b.怀疑CGO的http框架,但是又不能注释掉C.func

c.尝试了N种解决方法都无果

解决方案:

工程中用到.a的任何.h文件一定要和其版本保持同步,不然构造对象时会出现一定的偏差,导致指针偏移错误;

其次,编译可执行文件前务必,先rm,再go build

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgekikb
系列文章
更多 icon
同类精品
更多 icon
继续加载