【问题标题】:Eclipse remote debug cannot connect to X serverEclipse 远程调试无法连接到 X 服务器
【发布时间】:2014-01-07 16:37:10
【问题描述】:

我正在从一台 ubuntu 机器远程调试一个 qt 应用程序到另一台 ubuntu 机器。 我可以从控制台做到这一点:

root@eclipsePC# sudo ssh apppcIP -X
root@appPC# export DISPLAY=:0.0
root@appPC# gdb myApplication

现在我正在尝试对 Eclipse cdt 做同样的事情(使用 sudo 启动 eclipse)。我已将远程连接定义为 Linux 类型系统。它适用于没有图形的应用程序,但对于我的 qt 应用程序,我得到:

监听 2345 端口从主机“myEclipseIP”远程调试

myApp: 无法连接到 X 服务器

孩子以状态 1 退出

GDBserver 退出注销

我试过了

root@appPC# xhost +
root@appPC# export DISPLAY=:ECLIPSEPCIP:0.0

但它没有用。任何人都知道如何做到这一点? 谢谢

我在调试配置中添加了参数 -display ECLIPSEPCIP:0.0,现在它启动了,但在 appPC 中而不是主机 ECLIPSEPC 中。

【问题讨论】:

  • 您是否尝试将显示环境变量仅设置为:0 -> export DISPLAY=:0
  • 为什么在导出的 DISPLAY 中的 IP 前使用冒号 (:)?
  • 感谢您的建议,但它们没有任何区别。

标签: linux eclipse eclipse-cdt remote-debugging xserver


【解决方案1】:

您可以使用 ssh 配置文件强制执行 ssh X11 转发:

将以下行添加到您的 $HOME/.ssh/config:

Host apppcIP
  ForwardX11 yes

我想在 Eclipse 中应该还有一个选项来配置 -X 用于 ssh 连接,但我不确定并且没有用于测试的 Eclipse。但是,无论 eclipse 的功能集如何,上面显示的解决方案都可以正常工作。


此外,您不应该以 root 身份启动 eclipse,root 到 root 的 ssh 连接也被认为是不安全的。确保普通用户可以连接到远程主机并在那里执行必要的命令。

【讨论】:

  • 这对我不起作用。我必须创建配置文件,它以前不存在但没有区别......
  • 是的,配置文件不一定要存在。你试过ssh -X server 吗?
  • 是的,我可以从终端执行 ssh -X server 并且它可以工作,但是正如你所说,我在 eclipse 中找不到 ssh 的 -X 选项。
  • 这就是为什么我告诉我把它放到 .ssh/config 文件中。它适用于我的系统,您使用的是哪个操作系统?
  • 停下!确实,它不起作用(我误解了一些东西)。似乎 Eclipse 真的错过了检查.ssh/config。我找到了这个功能请求:bugs.eclipse.org/bugs/show_bug.cgi?id=210227
猜你喜欢
  • 2014-07-31
  • 1970-01-01
  • 2018-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-04
相关资源
最近更新 更多