Welcome 微信登录

首页 / 操作系统 / Linux / 在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,选择linux text模式,中文安装语言,swap分区为512MB,其余空间都挂载到根目录下。bootloader用Grub,自定义安装软件包,选择的软件包如下:Administration toolsDevelopment ToolsEditorsFtp ServerKernel DevelopmentNetWork ServerPrinting SupportServer Configuration ToolsSound and VideoSystem Tool选择系统支持的语言为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 -xvjf  libpng-1.2.16.tar.bz2
源码包中的README和INSTALL文件有关于libpng的详细信息和编译安装方法,用如下命令编译安装:cd /root/libpng-1.2.16./configuremakemake install默认安装在/usr/local/目录下,支持pkg-config,pkg-config文件放在/usr/lib/pkg-config/目录下。如果想卸载libpng,执行:make uninstall。
3.编译freetype-2.2.1删除原有的freetype:rm -rf /usr/lib/libfreetype*
下载freetype-2.2.1.tar.gz:http://download.savannah.gnu.org/releases/freetype/ 复制到/root/目录下解压:tar -xvzf  freetype-2.2.1.tar.gz
编译、安装:cd /root/freetype-2.2.1./configuremakemake install默认安装到/usr/local/目录下,支持pkg-config。
4.编译TinyX先删除原系统的X-window:rm -rf /usr/X11R6rm -rf /etc/X11
下载XFree86-4.3.0:ftp://ftp.xfree86.org/pub/XFree86/4.3.0/,共下载7个软件包:X430src-1.tgz X430src-2.tgzX430src-3.tgz
X430src-4.tgz 
X430src-5.tgz
X430src-6.tgz 
X430src-7.tgz全部复制到/root下解压,解压后的源码都会放在/root/xc目录下。
先编译一个lndir工具:cd  /root/xc/config/utilmake -f Makefile.ini lndircd ../../../用lndir制作一个源文件的符号链接目录:mkdir build cd build../xc/config/util/lndir  ../xc
用TinyX.cf的配置安装:cd config/cfcp -arf TinyX.cf host.def修改host.def为:[cpp]
  1. #define KDriveXServer  YES   
  2. #define TinyXServer    YES   
  3. #define XfbdevServer   YES   
  4. #define BuildLBX                YES   
  5. #define BuildFonts              YES   
  6. #define BuildAppgroup           NO   
  7. #define BuildDBE                NO   
  8. #define BuildXCSecurity         YES   
  9. #define FontServerAccess        NO   
  10. #undef BuildXF86RushExt   
  11. #define BuildXF86RushExt        NO   
  12. #undef BuildRender   
  13. #define BuildRender             YES   
  14. #define UseRgbTxt               YES   
  15. #define BuildFontServer         NO  
cd ../../touch xf86Date.htouch xf86Version.hmake Worldmake install主要的库、头文件、可执行文件和配置文件等都安装了在/etc/X11和/usr/X11R6下。
TinyX依赖于framebuffer,要打开framebuffer。修改/etc/grub.conf文件,在kernel一行添加:vga=0x311 fb:on0x311为640x480,16bpp。然后重启系统,启动时,屏幕左上方会出现一个企鹅Logo。
重启后运行/usr/X11R6/bin/Xfbdev,即可启动Xserver,可以看到灰色背景上有一个X形的鼠标。为Xfbdev建立一个符号链接:ln -s Xfbdev X这样就可以用startx命令启动X-window。用Ctrl+Alt+Backspace组合键退出X-window。
这里可能出现加载链接库的错误,查看/etc/ld.so.conf文件中是否有/usr/X11R6/lib,然后执行ldconfig -v。
  • 1
  • 2
  • 下一页
Mac OS操作系统演进历史与基本常识Linux系统的软件包管理——RPM相关资讯      redhat  GTK  TinyX 
  • 为什么像 RedHat 那样的开源旗手很  (12/23/2014 07:50:53)
  • 红帽目录服务RHDS(Red Hat   (11/28/2012 19:14:22)
  • RedHat 6 配置网卡team  (09/28/2012 18:52:50)
  • RedHat Linux 用户登录认证失败  (06/24/2014 19:56:55)
  • Red Hat Enterprise Linux 5.8日志  (09/29/2012 11:41:27)
  • Red Hat Enterprise Linux 5---  (09/12/2012 17:10:35)
本文评论 查看全部评论 (1)
表情: 姓名: 字数


评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表