在linux终端下运行X Window程序
作为Linux程序员,在大多数情况,在终端下干活(编程),可能更方便一点。服务器在机房里,大家都连接到同一台服务器上,而本机在Windows下运行一个终端(如SecureCRT),这是典型的配置。
如果开发的软件是不带GUI界面的,一点问题也没有,至少我自己这样做了几年了。而最近要编写GTK+程序,麻烦就来了。先是尝试在VMWare运行Linux上,当然可以,不过编译太慢了。加上我习惯于写一点,就编译、测试,编译太慢浪费我太多时间,只好另想办法。
我们知道X Window是C/S模型的,应用程序在一台电脑上运行,而显示在另外一台电脑上。 所以,解决上述问题最简单的方法就是,在本机(Windows)下安装一个X Window Server,把在服务器上运行程序显示在本机上。
在Windows下运行的X Window Server有不少,一些是商业版的,一些是免费的。最常用的免费X Window Server可能是Xcygwin,可以在http://x.cygwin.com/ 网站上免费下载。
下载后直接安装,和安装普通的cygwin没有什么差别。只要做些配置,这里我们假设:
Linux服务器IP为:10.20.30.246
Windows客户机IP为:10.20.30.243
在Windows端的Xcygwin下:
l 增加认证信息,允许IP为10.20.30.246的机器访问 Xserver。
$ xhost +10.20.30.246
l 启动X Window Server
$/usr/X11R6/bin/startxwin.bat
在Linux服务器的终端下:
l 设置DISPLAY环境变量
[root@linux usr]# export DISPLAY=10.20.30.243:0
l 运行应用程序
[root@linux usr]# gtk-demo
OK,你会看到: