Linux环境下Qt程序编译后Debug版运行正常,而Release版不正常,总是崩溃,使用gdb调试工具,运行release版编译后的程序,该工具直接给出出错代码行,这是一款非常好用的调试工具。
使用方法:
gdb ./cmd_basicmode
(gdb)r(运行)
如果程序出现了错误,你想跟踪问题:则输入bt
(gdb)bt
根据给出的提示查找问题,非常方便。
2023.10.19 11:35测试:
Linux版车辆视频检测器,Debug版正常而Release版不正常,用这个方法找到了具体的方法名,然后分析后发现SQLStr[256]定义的太小了,由于sql语句过长,容纳不下而造成缓冲区溢出,即:“buffer overflow detect"错误
博客讲述Linux环境下Qt程序编译后,Debug版运行正常,Release版崩溃的问题。介绍使用gdb调试工具定位出错代码行的方法,还通过Linux版车辆视频检测器测试案例,指出因SQLStr定义过小,sql语句过长导致缓冲区溢出的问题。
1597

被折叠的 条评论
为什么被折叠?



