如何在aix上调试java调用的.so

发布于 2024-12-29 20:44:13 字数 77 浏览 1 评论 0原文

我有平面C代码,构建后在AIX上给出.so文件,并且这个.so文件是从Java调用的,那么我如何调试.so文件?

干杯 巴拉

I have plane C code which after built gives .so file on AIX, and this .so file is invokes from Java, so how can I debug .so file?

cheers
Bala

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

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

发布评论

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

评论(1

检查您的 .so 是否是使用调试符号构建的。如果使用 gcc 或 g++,则可以使用 -g 选项来完成。然后,您可以通过进程号将 gdb 连接到 JVM 进程,因为 .so 将在那里运行。您可以使用适当的等效项“PROCESS=`ps | grep java | cut -d' ' -f1`; gdb -p $PROCESS”来完成此操作。使用 gdb 命令“dir $SOURCEDIR”添加源目录以进行调试,并将 $SOURCEDIR 替换为源目录的路径。最后,在 .so 源代码的所需行处设置断点。

我参考了博客条目 中的一些信息Linux - GDB 使用 Tomcat 调试 JNI

Check that your .so is built with debug symbols. If using gcc or g++, that is done using the -g option. Then you can attach gdb to the JVM process by process number because the .so will run there. You could do that using your appropriate equivalent to "PROCESS=`ps | grep java | cut -d' ' -f1`; gdb -p $PROCESS". Add your source directory for debugging by using the gdb command "dir $SOURCEDIR" substituting the path to your source directory for $SOURCEDIR. Finally, set a breakpoint at your desired line of the source code for the .so.

I referred to some information from a blog entry Linux - GDB to debug JNI with Tomcat.

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