X Window有关的几个问题有哪些?
X Window有关的几个问题有哪些?
一 基本概念
1 “linux”是一个内核名称,本身没有图形界面,现在的图形界面都是由linux下的应用程序实现的。
2 X和XFree86是什么关系?
X是一个协议,而不是具体的某个软件;
XFree86是实现这个协议的一个软件;
实现X协议的软件也并不只有XFree86,只不过在LINUX上最常用的是XFree86。苹果电脑的图形界面也是用X协议,而且被认为是做的最好的X协议图形界面,并且他对X协议的实现是做在系统内核里的,所以性能明显好很多,这就是为什么很多大型三维图形设计软件都是在苹果平台上的原因。
3 X和X11R6是什么关系?
X11R6 实际上是 X Protocol version 11 Release 6(X协议第11版第六次发行)的意思,就是说目前用的X协议是第11版的,然后经过了6次小的修正。
4 X包含什么内容?
标准的X Window System 包含三个部分:X Server,X Client, X Protocol;XFree86就是其中的X Server。标准的XFree86配置文件是放在 /etc/XF86Config ,而Red Hat的XFree86配置文件是放在/etc/X11/XF86Config。
二 编译X11源码:
1 在xc目录下执行
make World
make install
make install.man
2 如何生成XFree86文件
从网上下载的X11包默认生成的是Xorg,要想生成XFree86,必须在xc/config/cf目录拷贝xf86site.def为host.def,然后在文件中至少定义以下二项:
#define XF86Server YES
#define ServerToInstall XFree86
执行:
make World
make install
编译完后到/usr/X11R6/bin目录下,可以查看到XFree86已经被更新了。其中一些特定的配置都在host.def中更改。
注:如果是从RedHat安装盘中拷贝出来的源码包,则不必这样,因为默认已经是生成XFree86了。
三 X11配置
1 XF86Config文件在/etc/X11目录下,在/etc/X11目录下有个X文件,它是一个链接,指
向/usr/X11R6/bin/XFree86,即X Server的核心文件。
2 所有的显卡驱动文件都放在 /usr/X11R6/lib/modules/drivers 目录下,都以_drv结尾,
在XF86Config文件配置时不带这个结尾,例如Section "Device"项下的 Driver "vga",
表示对应的是vga_drv.o这个驱动
3 输入设备(如键盘,鼠标等)的驱动文件放在 /usr/X11R6/lib/modules/input 目录下。对应规则和上面一样。
四 常见问题
1 重新编译安装并更新XFree86后,startx不能启动,出现以下两个错误:
1) 不能打开 /dev/input/mice
2) 不能打开 "default font 'fixed' "
解决办法:
1) 因为mice是作为备用设备用的,所以只将它改为mouse即可,在/dev/input目录下可查看所有到存在的设备;
2) 原来的路径是"unix/:7100",将它改为绝对路径"/usr/X11R6/lib/X11/fonts/misc"之后就可以了;