关于gdb “Unable to find libthread_db matching inferior's thread library”的解决办法
在移植gdb的过程中常会出现
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
的提示信息,
libthread_db是用来支持“调试多线程程序”的函数库
因为现在的程序绝大多数都是多线程的,所以这个问题还是必须要解决的。
解决办法:
1.首先要确保目标板的系统中有libthread_db.so.1文件,如果没有可以在相应交叉编译工具的相关lib目录下找到,
例如我的就放在“4.7.3/arm-linux-gnueabihf/libc/lib/arm-linux-gnueabihf”下,需要把libthread_db-1.0.so拷贝到
目标系统的/lib或/usr/lib等函数库可以访问到的目录中,并创建一个相应的软连接libthread_db.so.1
2.确保auto-load libthread-db已经启用,可以在gdb用“show auto-load libthread-db”命令查看,设置命令为
”set auto-load libthread-db [on|off]“
3.需要设置auto-load safe-path, 这个路径实际上是被libthread_db信任的可执行程序(包括脚本)的路径,默认为空,
所以gdb本 身也不被信任,所以需要配置其路径 如"set auto-load safe-path /bin:/usr/bin:....."
4.设置libthread-db-search-path,即设置libthread_db的所在路径,可以用show libthread-db-search-path命令查看其设置,
设置命令为set libthread-db-search-path /lib
到此为止问题应该就能解决了,有关 libthread-db的更多内容请访问:
http://www.sourceware.org/gdb/current/onlinedocs/gdb/libthread_005fdb_002eso_002e1-file.html
https://www.sourceware.org/gdb/current/onlinedocs/gdb/Auto_002dloading-safe-path.html#Auto_002dloading-safe-path
https://www.sourceware.org/gdb/current/onlinedocs/gdb/Threads.html#set%20libthread%2ddb%2dsearch%2dpath
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
的提示信息,
libthread_db是用来支持“调试多线程程序”的函数库
因为现在的程序绝大多数都是多线程的,所以这个问题还是必须要解决的。
解决办法:
1.首先要确保目标板的系统中有libthread_db.so.1文件,如果没有可以在相应交叉编译工具的相关lib目录下找到,
例如我的就放在“4.7.3/arm-linux-gnueabihf/libc/lib/arm-linux-gnueabihf”下,需要把libthread_db-1.0.so拷贝到
目标系统的/lib或/usr/lib等函数库可以访问到的目录中,并创建一个相应的软连接libthread_db.so.1
2.确保auto-load libthread-db已经启用,可以在gdb用“show auto-load libthread-db”命令查看,设置命令为
”set auto-load libthread-db [on|off]“
3.需要设置auto-load safe-path, 这个路径实际上是被libthread_db信任的可执行程序(包括脚本)的路径,默认为空,
所以gdb本 身也不被信任,所以需要配置其路径 如"set auto-load safe-path /bin:/usr/bin:....."
4.设置libthread-db-search-path,即设置libthread_db的所在路径,可以用show libthread-db-search-path命令查看其设置,
设置命令为set libthread-db-search-path /lib
到此为止问题应该就能解决了,有关 libthread-db的更多内容请访问:
http://www.sourceware.org/gdb/current/onlinedocs/gdb/libthread_005fdb_002eso_002e1-file.html
https://www.sourceware.org/gdb/current/onlinedocs/gdb/Auto_002dloading-safe-path.html#Auto_002dloading-safe-path
https://www.sourceware.org/gdb/current/onlinedocs/gdb/Threads.html#set%20libthread%2ddb%2dsearch%2dpath
...全文
相关推荐
gdb: Warning Unable to find libthread_db matching inferior‘s thread library
最近遇到这个警告,这个警告的意思是说,调试的程序是多线程的程序,而且找到了libthread_db 和libc的目标文件,共享库,但是找不到符号:pthread_create。从下面的链接,可以看到以后libthread_db 的函数可能要合到libc里去,所以要添加对libc的兼容。就是对应的so文件中没找到符号,需要debuginfo相关的rpm安装。那为什么没找到相关的符号呢?
科技中介服务机构如何降低技术交易过程中的人工操作成本?.docx
科技中介服务机构如何降低技术交易过程中的人工操作成本?
TdsProxy.cpp
TdsProxy.cpp
高校技术转移办公室人员如何实现科技成果的精准推介展示?.docx
科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。
科技中介服务机构如何通过平台实现服务流程的标准化与智能化?.docx
科技中介服务机构如何通过平台实现服务流程的标准化与智能化?



