linux命令行显示中文内容,centos7安装zhcon

本文档详细记录了在CentOS7系统中通过手动安装和配置zhcon来实现命令行界面显示中文的过程。涉及到从Windows下载安装包,使用Putty上传,解压,patch更新,添加头文件,解决编译错误,安装ncurses库,最后成功运行zhcon并显示中文。过程中遇到的主要问题是缺少头文件和ncurses库,通过添加头文件和安装相应库逐一解决。
摘要由CSDN通过智能技术生成

要让纯linux命令行支持显示中文,需要安装zhcon,实际操作不易,几近崩溃,以此记录,本机Centos7。

首先需要先在windows上下载zhcon-0.2.5.tar.gz和zhcon-0.2.5-to-0.2.6.diff.gz,链接http://sourceforge.net/projects/zhcon/files/

将安装包上传到虚拟机,我用的是Putty,也可以使用其他的,然后解压zhcon-0.2.5.tar.gz,最好是解压到一个熟悉的目录里,比如zhcon(先在根目录创建)。

解压命令:tar zxvf zhcon-0.2.5.tar.gz -C zhcon。

将zhcon-0.2.5-to-0.2.6.diff.gz移动到zhcon目录下(mv命令),在zhcon/zhcon-0.2.5下执行zcat ../zhcon-0.2.5-to-0.2.6.diff.gz | patch -p1(如果patch命令未找到可以使用yum -y install patch安装即可)。

然后在zhcon/zhcon-0.2.5下执行./configure。

执行完后输入make,按下enter,然后就开始纠错之旅

1.make报错:

 意思是'memset'在此作用域中未声明,这是因为缺少include头文件,添加即可:在src/display目录下的fblinear4.cpp文件中插入一行#include <cstring>,保存退出。

 

 2.make报错:

和上面一样,添加include头文件即可:在 src/display目录下的fblinear8.cpp插入一行#include <cstring>,保存退出。

3.make报错:

同理, 添加include头文件即可:在src目录下的basefont.cpp插入一行#include <cstring>,保存退出。

 

4.make报错:

在src目录下的graphdev.cpp插入一行#include <cstring>,另外定义一个函数int abs(int dx){return (dx<0?-dx:dx);}保存退出。

 

5.make报错:

在src目录下的window.cpp插入一行#include <cstring>,保存退出。

6.make报错:

 将src目录下的winime.cpp中和变量p相关的unsigned int更改为unsigned long:

为了方便找到unsigned int的位置,可以使用/unsigned int直接找到:

更改后:

7.make报错:

错误原因:缺少ncurses包,解决方法:用root身份执行yum install ncurses ncurses-devel即可。

问题输入y即可。 

8.make报错:

在src目录下的zhcon.cpp插入一行#include <cstring>,保存退出。

 

9.make报错:

在src目录下的inputmanager.h插入一行#include <sys/select.h>,保存退出。

10.make报错:

在src目录下的inputclient.h插入一行#include <cstdlib>,保存退出。

11.make报错:

undefined reference to tgetent,undefined reference to tgetstr:

需要连接ncurses库,在src目录下的Makefile文件里面找到LIBS=开头的一行,在后面添加-lncurses。

 

排查完所有error后,再次make,终于成功了,然后再make install,顺利结束。

但是此时还是不能看见文件里的中文,还需要启动zhcon,启动方法:zhcon --utf8,

 

能看到这个界面就算启动成功了。 

启动完成后,再去查看带中文内容的文件就能看见中文了,如果还是不行,就重启一下虚拟机再启动zhcon。

如果需要退出zhcon,只需要输入exit或者ctrl+D即可退出。

 

 

 

 

 

 

 

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值