欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

gdb / 调试进入 so 库的方法

发布时间:2024/10/14 编程问答 37 豆豆
生活随笔 收集整理的这篇文章主要介绍了 gdb / 调试进入 so 库的方法 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

一、准备

1、so 库源码

/* * mylib.h */ #ifndef MYLIB_H_ #define MYLIB_H_int add(const int &i, const int &k); int cross(const int &i, const int &k);#endif /* * mylib.cc */ #include "mylib.h"int add(const int &i, const int &k) {return i + k; }int cross(const int &i, const int &k) {return i * k; }

2、启动程序

/* * test.cc */ #include "mylib.h" #include <iostream>int main() {std::cout << add(1, 2) << std::endl;std::cout << cross(2, 2) << std::endl;return 0; }

二、生成库和可执行程序

g++ mylib.cc -shared -g -o ./build/libmylib.so g++ test.cc -lmylib -L ./build -g -o ./build/test

目录树:

三、调试

cd build

直接断点调试,指令 s 即可进入 addcross 函数中。

 

(SAW:Game Over!)

总结

以上是生活随笔为你收集整理的gdb / 调试进入 so 库的方法的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。