在main函数执行之前段错误,gdb无法调试,估计和g++编译参数相关。

发布于 2022-09-04 21:58:41 字数 504 浏览 33 评论 0

尝试用c++分装openssl,先编写一个静态库libtest.a。依赖于 -lssl -lcrytpo -lpthread。
目录结构:

clipboard.png

有两个测试文件: client.cpp, server.cpp
编译可执行程序时用的命令如下:
g++ -g -o2 -fpic client.cpp -I../include -L ../lib -ltest -shared -u -lssl -lcrypto -lpthread -o client
编译成功;
执行出错,gdb调试发现在main函数启动之前就奔溃了。
补充:将main函数代码全部注释,上述编译也没法跑。编译时去掉 -shared参数,程序才正常结束。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

过度放纵 2022-09-11 21:58:41

自己写的用来编译静态库的代码有问题。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文