GCC/GDB
文章平均质量分 75
GCC/GDB实战经验
三问Linux社区
分享过往数年服务器和Linux相关工作经验,关注当下热点技术,紧着未来发展趋势。
欢迎关注 “三问Linux社区” 公众号,探讨技术,共同进步!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
如何查询交叉编译环境的 glibc 版本
要查询交叉编译环境的glibc版本,可以通过检查目标系统的库文件来实现。首先定位工具链中的库路径(如/usr/aarch64-linux-gnu/lib/),然后使用strings命令提取libc.so.6文件中的版本信息,并用grep过滤出GLIBC_开头的版本号,其中最高版本即为当前glibc版本。若找不到文件,可尝试搜索或检查工具链的sysroot目录。该方法简单高效,适用于验证交叉编译环境的兼容性。原创 2025-10-19 10:22:08 · 480 阅读 · 0 评论 -
gdb: 如何找到pthread_mutex_t死锁的owner
在多线程编程中,死锁是一个常见且棘手的问题。当两个或多个线程互相等待对方释放锁时,程序就会陷入死锁状态,导致所有相关线程都无法继续执行。为了快速定位死锁问题,调试工具 GDB 提供了强大的功能,允许我们深入分析线程和锁的状态。要真正掌握多线程编程,还需要深入理解线程同步机制、锁的使用原则以及并发编程的最佳实践。,我们可以快速找到死锁的持有者线程,从而更好地理解问题的本质。这种方法不仅适用于简单的死锁场景,还可以扩展到更复杂的多线程调试任务中。在调试过程中,尽量避免修改锁的状态,以免影响程序的正常运行。原创 2025-04-15 16:55:43 · 1389 阅读 · 0 评论 -
gdb:利用break和command计算函数执行时间
gdbcmd。原创 2025-03-17 09:40:31 · 1944 阅读 · 0 评论 -
如何在GDB中为应用程序传递参数
无论是传递简单的单个参数,还是复杂的带有选项和值的多个参数,GDB都提供了灵活且强大的方法来管理命令行参数。通过正确使用引号、转义字符以及show args命令,开发者可以确保参数被准确无误地传递给应用程序,从而提升调试效率和准确性。希望这些指导原则能帮助读者在GDB中更专业和高效地管理命令行参数,使调试过程更加顺畅。原创 2025-01-04 09:23:22 · 926 阅读 · 0 评论 -
GDB:条件断点:判断相等时使用一个等号还是两个等号
GDB:条件断点:判断相等用一个等号还是两个等号原创 2025-01-02 12:03:59 · 223 阅读 · 0 评论 -
Linux: 通过/proc/pid/stack查看程序卡在内核的什么地方
git describe 默认会找到距离指定提交最近的标签,并且如果该标签不是直接指向该提交,则会提供额外的信息(如提交数量和哈希)。文件是 Linux 内核提供的一个接口,用于显示进程当前正在等待的内核函数或事件。当一个进程处于睡眠状态(即它正在等待某个事件发生,如 I/O 操作完成或信号量可用),是 Linux 性能分析工具的一部分,它可以用来收集性能数据,包括用户态和内核态的堆栈跟踪。先用gdb的断点把程序停住,再看/proc/pid/stack,是不是有实用价值的debug方式?原创 2024-12-16 10:49:05 · 1270 阅读 · 0 评论 -
当GDB运行 run 命令后无法输入新的GDB命令
当在GDB中运行 `run` 命令后,程序开始执行,GDB的命令行会被阻塞,直到程序暂停或终止。这意味着在程序运行过程中无法输入新的GDB命令,这在调试过程中是非常不方便的。原创 2024-11-25 11:35:58 · 685 阅读 · 0 评论 -
使用 mcheck 和 MALLOC_CHECK_ 环境变量检测内存错误
mcheck。原创 2024-11-22 16:14:37 · 775 阅读 · 0 评论 -
如何在 gdb 中执行命令
通过上述方法,你可以在gdb中灵活地执行命令,从而更高效地进行调试。无论是直接在gdb提示符下执行命令、使用命令行选项、配置.gdbinit文件还是使用脚本文件,每种方法都有其适用的场景。原创 2024-11-18 14:44:56 · 1054 阅读 · 0 评论 -
gdb 中 -x 和 -ex 选项的区别
ex选项:适用于简单的命令序列,命令直接作为参数传递。-x选项:适用于复杂的命令序列或需要多次使用的命令集合,命令从文件中读取。通过上述方法,可以在gdb中灵活地执行命令,从而更高效地进行调试。无论是直接在gdb提示符下执行命令、使用命令行选项、配置.gdbinit文件还是使用脚本文件,每种方法都有其适用的场景。原创 2024-11-18 14:29:24 · 603 阅读 · 0 评论
分享