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