正在使用 Ubuntu 10.04。
我正在测试 gSOAP 示例之一 (calcclient) 作为静态链接的可执行文件。效果很好。 后来我分割了模块,因此其中一些模块进入了共享库(我将其复制到/usr/local/lib )。然后将主模块编译为独立的动态链接二进制文件。 一切似乎都正常,ldd 输出是
linux-vdso.so.1 => (0x00007fff66fff000)
libgsoapcalcclient.so => /usr/local/lib/libgsoapcalcclient.so (0x00007f7a59d35000)
libc.so.6 => /lib/libc.so.6 (0x00007f7a59986000)
/lib64/ld-linux-x86-64.so.2 (0x00007f7a5a177000)
这是预期的。 但是当我尝试执行二进制文件时,它会因段错误而停止。 我该怎么做才能解决这个问题?
最佳答案
在启用调试信息的情况下进行编译并确定段错误发生的位置将是一个不错的起点。
关于c - Linux程序段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26148219/