警告:GDB:无法设置控制终端:不允许操作

Ham*_*eer 20 code-blocks gdb 12.10

我在 Ubuntu 12.10 中使用代码块 IDE。但是当我尝试调试任何项目时,我收到以下警告:

warning: GDB: Failed to set controlling terminal: Operation not permitted
Run Code Online (Sandbox Code Playgroud)

我现在该怎么办 ?

chr*_*ner 5

我通过 XTerm 在使用 GDB 7.11 的 Ubuntu 16.04 上遇到了类似的问题。为了解决这个问题,我只是通过发布chmod +x /path/to/file/.gdbinit解决了问题来修改本地 .gdbinit 文件的权限。


小智 3

  1. 安装或验证您的 PC 上是否安装了 gnome 终端

  2. 切换到gnome-terminal。在“设置”->“环境”->“要启动的终端”下,我使用以下命令:

    gnome-terminal --disable-factory --hide-menubar -t $TITLE -x
    
    Run Code Online (Sandbox Code Playgroud)

您仍然会收到错误,但调试器可以正常工作。

  • 正如您提到的,这并不能解决错误。 (4认同)

小智 1

我在 Ubuntu 10.04、QTCreator 2.5.2 和 ubuntu 附带的 gdb 7.1 上也遇到了同样的问题。

我可以通过升级到当前版本的 gdb 7.5 并使用它代替 ubuntu 安装的 7.1 来解决我的问题。

您可以下载最新的并自行编译:

  • 在此处检查最新gdb-*.tar.gz文件,并根据需要调整以下命令。

wget http://ftp.gnu.org/gnu/gdb/gdb-7.6.2.tar.gz
tar xvfz gdb-7.6.2.tar.gz
cd gdb-7.6.2
./configure
make
cp gdb/gdb /usr/local/bin
Run Code Online (Sandbox Code Playgroud)

请注意,它/usr/local/bin位于运行 QtCreator 时使用的 PATH 的开头。

您可以将以下行放入您的.profile

export PATH=$PATH:/usr/local/bin 
Run Code Online (Sandbox Code Playgroud)