gpt4 book ai didi

c++ - 使用 gdbserver 从 clion 调试 jni 库

转载 作者:行者123 更新时间:2023-11-28 04:47:21 34 4
gpt4 key购买 nike

我想知道是否可以从 CLION 调试 jni 库

我的设置:

我有一个远程服务器,它正在运行内部调用 native 库的 Java 应用程序。在服务器上,我启动了附加到现有进程的 gdbserver 实例:

gdbserver --attach localhost:7777 pid

它成功连接到进程。

在本地机器上,我在 CLION 中创建远程调试配置,指定目标远程农业:

tcp:host:7777

我还指定了符号文件和 sysroot。因此,当我运行此配置时,我成功连接到远程服务器,但随后由于 SIGPIPESIGSEGV 信号,我一直在暂停程序,所以我永远不会到达真正的断点。 (我相信那些是 jvm 内部的信号)。

关闭异常断点没有帮助。

有没有办法调试这样的设置?

最佳答案

JVM 确实在底层大量使用信号。为了有效地调试它,您可能希望使用 handle GDB 命令忽略这些信号。在 CLion 的 GDB 控制台中输入:

(gdb) handle SIGSEGV nostop noprint pass

这是一个很好的answer一个非常接近的问题。

关于c++ - 使用 gdbserver 从 clion 调试 jni 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49005371/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com