在Redhat9下构建TinyX+GTK图形环境

概述

最近要将RedHat9.02移植到一块嵌入式586的主板上,空间有限,还要有图形环境,支持中文。所以,要建立一个精简的图像环境,先选择TinyX+GTK的方式进行研究。TinyX是XFree86针对嵌入式的编译选项,体积小,启动速度快。

本文使用虚拟机vmware安装Redhat-9.02文本系统,,然后用XFree86-4.3.0编译TinyX,最后编译GTK+-2.0。

1.安装Redhat-9.02

在vmware上新建一个虚拟机,硬盘空间为4GB,内存512MB。开始安装Redhat-9.02,选择linuxtext模式,中文安装语言,swap分区为512MB,其余空间都挂载到根目录下。bootloader用Grub,自定义安装软件包,选择的软件包如下:

Administrationtools

DevelopmentTools

Editors

FtpServer

KernelDevelopment

NetWorkServer

PrintingSupport

ServerConfigurationTools

SoundandVideo

SystemTool

选择系统支持的语言为Chinese+English。

安装后将/etc/sysconfig/下的i18n文件修改如下:

LC_CTYPE=”zh_CN.GB2312″

SUPPORTED=”zh_CN.GB2312:en_US.UTF-8:en_US:en”

SYSFONT=”latercyrheb-sun16″

SYSFONTACM=”iso01″

2.编译libpng-1.2.16

编译TinyX时需要png.h文件,所以要重新安装libpng。先删除原有的libpng:

rm-rf/usr/lib/libpng*

下载libpng-1.2.16.tar.bz2,复制到/root目录下解压:

tar-xvjflibpng-1.2.16.tar.bz2

源码包中的README和INSTALL文件有关于libpng的详细信息和编译安装方法,用如下命令编译安装:

cd/root/libpng-1.2.16

./configure

make

makeinstall

默认安装在/usr/local/目录下,支持pkg-config,pkg-config文件放在/usr/lib/pkg-config/目录下。如果想卸载libpng,执行:makeuninstall。

3.编译freetype-2.2.1

删除原有的freetype:

rm-rf/usr/lib/libfreetype*

下载freetype-2.2.1.tar.gz:

复制到/root/目录下解压:

tar-xvzffreetype-2.2.1.tar.gz

编译、安装:

cd/root/freetype-2.2.1

./configure

make

makeinstall

默认安装到/usr/local/目录下,支持pkg-config。

4.编译TinyX

先删除原系统的X-window:

rm-rf/usr/X11R6

rm-rf/etc/X11

下载XFree86-4.3.0:ftp://ftp.xfree86.org/pub/XFree86/4.3.0/,共下载7个软件包:

X430src-1.tgz

X430src-2.tgz

X430src-3.tgzX430src-4.tgzX430src-5.tgzX430src-6.tgzX430src-7.tgz

全部复制到/root下解压,解压后的源码都会放在/root/xc目录下。

先编译一个lndir工具:

cd/root/xc/config/util

make-fMakefile.inilndir

cd../../../

用lndir制作一个源文件的符号链接目录:

mkdirbuild

cdbuild

../xc/config/util/lndir../xc

用TinyX.cf的配置安装:

cdconfig/cf

cp-arfTinyX.cfhost.def

修改host.def为:

[cpp]

#defineKDriveXServerYES

cd../../

touchxf86Date.h

touchxf86Version.h

makeWorld

makeinstall

主要的库、头文件、可执行文件和配置文件等都安装了在/etc/X11和/usr/X11R6下。

TinyX依赖于framebuffer,要打开framebuffer。修改/etc/grub.conf文件,在kernel一行添加:

vga=0x311fb:on

0x311为640×480,16bpp。

然后重启系统,启动时,屏幕左上方会出现一个企鹅Logo。

重启后运行/usr/X11R6/bin/Xfbdev,即可启动Xserver,可以看到灰色背景上有一个X形的鼠标。

为Xfbdev建立一个符号链接:

ln-sXfbdevX

这样就可以用startx命令启动X-window。用Ctrl+Alt+Backspace组合键退出X-window。

这里可能出现加载链接库的错误,查看/etc/ld.so.conf文件中是否有/usr/X11R6/lib,然后执行ldconfig-v。

可笑的小心谨慎,还有从来就不会安全的安全感。

在Redhat9下构建TinyX+GTK图形环境

相关文章:

你感兴趣的文章:

标签云: