Запуск приложения GTK + на компьютере с Linux из Windows - PullRequest
2 голосов
/ 07 октября 2009

Я установил GTK на машине с Linux.Я подключаюсь к Linux Machine из сеанса Telnet, чтобы скомпилировать программы GTK с Windows Machine.Я использую Cygwin на Windows Machine.но я не могу видеть вывод GUI моей программы GTK на моей машине с Windows.

Когда я запускаю программу с моего терминала, я получаю эту ошибку:

(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

Ответы [ 4 ]

2 голосов
/ 07 октября 2009

Вам необходимо запустить X window system (установить с Cygwin) на вашем Windows-боксе и включить удаленные подключения (возможно, с xhost ). Установите переменную DISPLAY на вашем Linux-боксе в адрес вашего Windows-бокса и: 0, как таковой:

export DISPLAY=192.168.1.123:0

В целях безопасности я могу рекомендовать использовать ssh вместо telnet. В этом случае вам не нужно включать удаленные подключения с помощью xhost, и вам не нужно устанавливать переменную DISPLAY. Вам нужно только включить X forwarding .

2 голосов
/ 07 октября 2009

Вы должны установить переменную DISPLAY в сеансе telnet на IP-адрес или DNS-имя вашего компьютера с Windows и добавить «: 0»

export DISPLAY=windows.your.domain:0

И вы должны запустить X-сервер на компьютере с Windows (поставляется с Cygwin, но вы должны запустить его).

1 голос
/ 07 октября 2009

Установите небольшой X-сервер в Windows XMing32 , затем запустите его, используйте putty в качестве консольного клиента и отметьте «Пересылка X11» в Connection-> SSH-> X11.

К сожалению , Пересылка X11 недоступна через Telnet, необходимо запустить сервер SSH на целевом Linux и подключиться через SSH. (См., Если /etc/ssh/sshd_conf также требует включения пересылки X11).

1 голос
/ 07 октября 2009

Вы должны установить X-сервер на свой компьютер с Windows и убедиться, что для DISPLAY установлено значение yourmachine:0 или что-то подобное. Или, что еще лучше, используйте ssh вместо telnet (например, putty) и туннелируйте ваше X-соединение. Однако вам придется немного заняться собственным исследованием, потому что полный ответ будет длинным.

...