gpt4 book ai didi

multithreading - 逆向多线程错误

转载 作者:行者123 更新时间:2023-12-04 14:18:18 28 4
gpt4 key购买 nike

我在 gdb(7.1 版)中收到以下消息:
[Thread debugging using libthread_db enabled]
和命令 reverse-step
结果显示以下错误消息:

(gdb) reverse-step
Target multi-thread does not support this command

我现在正在调试一个串行代码,所以我绝对不需要多线程。我可以以某种方式关闭它以便我获得最新的反向调试命令吗?此外,如果代码与 OpenMPI 并行化,则根本不需要多线程调试,对吗?

编辑:这是否设置为可以排除的编译标志?

最佳答案

您没有提到您使用的是哪个版本的 GDB,但过了一会儿,参数 libthread-db-search-path可用。

(gdb) set libthread-db-search-path /tmp
(gdb) start
Temporary breakpoint 1 at 0x400632: file threads.c, line 14.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.

将告诉 GDB 在它不是的目录中查找它的帮助程序库( libthread-db.so ),因此不会启用多线程调试!

我不确定 OpenMPI 并行应用程序是多进程的(与多线程的 OpenMP 相比),所以它不会为你改变任何东西。

编辑 : 多线程调试通常只有在 libpthread.so 时才启用或等效文件由您的进程加载( ldd your-process 以检查它是否作为共享库链接),因此如果您不需要它,则编译脚本中可能存在问题。

关于multithreading - 逆向多线程错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6625486/

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