我知道围绕这个主题有一些话题,但是他们都没有帮助我。
我正在尝试使用GDB调试我的应用程序而我正在获取错误
[debug]Cannot find new threads: generic error
[debug][Thread debugging using libthread_db enabled]
在函数dlopen中(“my_lib.so”,RTLD_LAZY);
关于这一点的一个奇怪的事实是,它曾经在我使用32位架构的Ubuntu编译时工作。现在,我已经搬到了一台安装了64位ubuntu的新机器, HOWEVER ,我给出了编译选项-m32,以便应用程序仍然可以在32位下编译。请不要告诉我尝试在64位下编译它,因为有几个原因不这样做。
我已按照this主题的说明操作,但仍然没有。
有人有不同的建议吗?
编辑: 32位机器上的GCC版本是4.4.4,GDB是7.2 在64位机器上,GCC的版本是4.6.1,GDB是7.3
这可能有什么影响吗?
答案 0 :(得分:0)
请设置此
LD_PRELOAD=/lib/x86_64-linux-gnu/libpthread.so.0 gdb --args ./app