【问题标题】:Running a GTK+ application on a Linux machine, from Windows在 Linux 机器上从 Windows 运行 GTK+ 应用程序
【发布时间】:2009-10-07 08:05:48
【问题描述】:

我在 Linux 机器上安装了 GTK。 我正在从 Telnet 会话连接到 Linux 机器以编译 GTK 程序 来自 Windows 机器。我在 Windows 机器上使用 Cygwin。但我看不到 我的 GTK 程序在我的 Windows 机器上的 GUI 输出。

当我从终端运行程序时出现此错误:

(helloworld:22576): Gtk-WARNING **: cannot open display:

我从发布的每个答案中尝试了解决方案,但现在没有用我收到以下错误:

$ ./helloworld
Invalid MIT-MAGIC-COOKIE-1 key
(helloworld:22710): Gtk-WARNING **: cannot open display: 172.25.0.161:0

我的 Cygwin 控制台出现以下错误:

client 6 rejected from IP 172.25.0.91 Auth name: MIT-MAGIC-COOKIE-1 ID: -1

【问题讨论】:

  • 谷歌又倒闭了吗?不开心的一天。 :(
  • 这很令人困惑。请清楚说明您想做什么。你想通过 Cygwin 在 Windows 上运行 GTK 程序吗?那台 Linux 机器与它有什么关系?
  • 我尝试了所有答案,但现在没有用,我得到以下错误。 $ ./helloworld Invalid MIT-MAGIC-COOKIE-1 key (helloworld:22710): Gtk-WARNING **: cannot open display: 172.25.0.161:0
  • Bombe -- 我认为每个人都应该在发布问题之前问你。您为什么不远离与您无关的问题!....没有人要求您对此问题发表评论或发帖,所以请保持距离!

标签: gtk x11


【解决方案1】:

您必须在您的 telnet 会话中将 DISPLAY 变量设置为您的 Windows 机器的 IP 地址或 DNS 名称,并附加“:0”

export DISPLAY=windows.your.domain:0

而且你必须在 Windows 机器上启动一个 X 服务器(Cygwin 自带但你必须启动它)。

【讨论】:

    【解决方案2】:

    您需要在 Windows 机器上运行 X window system(使用 Cygwin 安装)并启用远程连接(可能使用 xhost)。将 Linux 机器上的 DISPLAY 变量设置为 Windows 机器的地址和 :0,如下所示:

    export DISPLAY=192.168.1.123:0
    

    出于安全原因,我建议使用ssh 而不是telnet。在这种情况下,您不需要启用与 xhost 的远程连接,也不需要设置 DISPLAY 变量。您只需要启用X forwarding即可。

    【讨论】:

      【解决方案3】:

      你应该在你的 windows 机器上安装 X-server 并确保你将 DISPLAY 设置为 yourmachine:0 或类似的东西。或者更好的是使用 ssh 而不是 telnet(例如 putty)并通过隧道连接您的 X 连接。不过,您必须自己研究一下,因为完整的答案会很长。

      【讨论】:

        【解决方案4】:

        在WindowsXMing32上安装一个小型X服务器,然后运行它,使用putty作为控制台客户端,在Connection->SSH->X11中勾选“X11 Forwarding”。

        很遗憾,X11 转发无法通过 Telnet 进行,您必须在目标 Linux 上运行 SSH 服务器并通过 SSH 连接。 (查看/etc/ssh/sshd_conf 是否也需要启用 X11 转发)。

        【讨论】:

        • 感谢我忘记将 X11 转发标志设置为真。我工作了!
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多