【Qt】QtCreator无法调试终端程序,启动报错SIGSTOP
1、問題描述
使用QtCreator調(diào)試終端程序時,因?yàn)槭盏叫盘朣IGSTOP 而退出,無法調(diào)試程序。
2、解決方法
解決方式是,設(shè)置GDB不處理SIGSTOP ,
在QtCreator中進(jìn)入GDB命令設(shè)置窗口:
Tools -> Options -> Debugger -> GDB -> Additional Startup Command
在 Additional Startup Command 中添加如下內(nèi)容:
handle SIGSTOP nostop pass
參考網(wǎng)址:https://bugreports.qt.io/browse/QTCREATORBUG-25082
3、擴(kuò)展:GDB handle命令詳解
handle 命令的語法格式如下:
(gdb) handle signal mode
其中,signal 參數(shù)表示要設(shè)定的目標(biāo)信號,它通常為某個信號的全名(SIGINT)或者簡稱(去除‘SIG’后的部分,如 INT);如果要指定所有信號,可以用 all 表示。
mode 參數(shù)用于明確 GDB 處理該目標(biāo)信息的方式,其值可以是如下幾個:
nostop:當(dāng)信號發(fā)生時,GDB 不會暫停程序,其可以繼續(xù)執(zhí)行,但會打印出一條提示信息,告訴我們信號已經(jīng)發(fā)生;
stop:當(dāng)信號發(fā)生時,GDB 會暫停程序執(zhí)行。
noprint:當(dāng)信號發(fā)生時,GDB 不會打印出任何提示信息;
print:當(dāng)信號發(fā)生時,GDB 會打印出必要的提示信息;
nopass(或者 ignore):GDB 捕獲目標(biāo)信號的同時,不允許程序自行處理該信號;
pass(或者 noignore):GDB 調(diào)試在捕獲目標(biāo)信號的同時,也允許程序自動處理該信號。
總結(jié)
以上是生活随笔為你收集整理的【Qt】QtCreator无法调试终端程序,启动报错SIGSTOP的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Qt】Qt再学习(九):并发 QtCo
- 下一篇: 【Qt】QtCreator中配置clan