|
|

楼主 |
发表于 2005-8-8 21:25:36
|
显示全部楼层
控制台中文化
利用 Unicon 3.0 实现控制台的中文化. Unicon 3.0 是 TurboLinux 公司利用
Unicon 技术实现的 Linux 控制台国际化的解决方案. 通过终端帧缓冲方式实现
多字节语种的显示与输入,支持 GB,GBK,BIG5,JIS,KSC 等编码.
可以从 China Linux Forum 或 直接从 TurboLinux 公司的网站下载:
http://www.linuxforum.net/ftp/update/Unicon-3.0-release.tar.gz
ftp://ftp.turbolinux.com.cn/pub/ ... -3.0-release.tar.gz
安装 Unicon 3.0 需要修改 Linux 内核. Unicon 3.0 同时提供了 Kernel-2.2.17
和 Kernel-2.4.0-test10 的内核补丁. 笔者选择了稳定内核 Kernel-2.2.17.
最新的内核源代码可以在国内外很多站点得到,或者直接从以下网站下载:
http://www.kernel.org/pub/linux/kernel/v2.2/linux-2.2.17.tar.gz
1. 下载完毕后,将内核源代码包解压缩到 /usr/src 目录中:
# cd /usr/src
# tar zxvf /path/to/your/linux-2.2.17.tar.gz
2. 为内核打上 Unicon 补丁:
# cd /tmp
# tar zxvf /path/to/your/Unicon-3.0-release.tar.gz
# cd /usr/src
# gzip -dc /tmp/Unicon-3.0/kernel-patches/Unicon-kernel-2.2.17-1.patch.gz | patch -p0 -b
3. 编译新内核:
# cd /usr/src/linux
# make mrproper
# make xconfig 启动内核配置程序
在内核配置菜单中以下选项前选择"Y":
Code maturity level options
+-Prompt for development and/or incomplete code/drivers
Console Driver
+-Support Frame Buffer Devices
+-Unicon Support
+-VESA VGA Graphics Console
为了使 Linux 能够识别 Window 下中文文件名,应当选择核心支?p> 中文
代码页:
Character Driver
+-Native Langruage
+-code 936(GBK)
根据具体情况配置其它选项, 然后 Save configuration and exit.
# make dep
# make bzImage
# make modules
# make modules_install
4. 新内核编译成功后,测试新内核是否运行
# cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.2.17
# cp /usr/src/linux/System.map /boot/System.map-2.2.17
编辑 /etc/lilo.conf 文件将新内核的入口添加到引导记录里,并使之生效:
#lilo -vi
使用重新引导系统.
5. 安装 GNU 可移植线程库 pth-1.3.7
下载地址为ftp://ftp.gnu.org/gnu/pth/pth-1.3.7.tar.gz
# cd /tmp
# tar zxvf /path/to/your/pth-1.3.7.tar.gz
# cd pth-1.3.7
# ./configure --prefix=/usr/local
# make
# make test
# make install
使新的库文件目录生效:
# echo /usr/local/lib >> /etc/ld.so.conf
# ldconfig
6. 安装 Unicon-3.0
虽然 Unicon 3.0 的编译过程很简单,但出于节省编译时间和节省存储空间的目的,可做
少量修改。例如:Unicon 默认编译包含 GB,GBK,BIG5,JIS 和 KSC 编码,而实际使用时,
有些编码却用不上.当然,是否全部编译还得由自己的情况而定.
进入 Unicon-3.0 目录,在 fonts 目录内,修改 Makefile.in 文件内容,将你不需要编
译的字体前加上 # 号. 在 Unicon/Unicon 目录内,需在 ImmHzInput.cpp 和 UniKey.cpp
的头部加入语句 #include . 在 tools 目录内,在 Makefile.in 中,去掉
-V2.7.2.3, 将 CFLAGS 设成 CFLAGS = -O2 -Wall -I.
# cd ..
# ./confugre --prefix=/usr/local
# make
# make install
# make data
# make data-install
7. 现在 Unicon3.0 已经编译并安装完成, 为了在控制台下得到更
好的显示效果, 修改 lilo.conf 文件, 例如
image=/boot/vmlinuz-2.2.17
label=k2217
root=/dev/hda2
read-only
vga=771 //设置控制台的分辨率为800x600*16bit
执行 lilo -v 使 lilo 生效.
重新引导系统.
执行
# insmod unikey
# insmod encode-gb
# loadunimap /usr/lib/Unicon/direct.uni
# Unicon --gb
如果出现了蓝色的输入条,试试 Ctrl+Space 应该可以隐藏输入条, 再试试右面的shift
键,应该可以出现智能拼音输入法提示,至此,已经完成了控制台的中文化. |
|