0. 写在前面
0.1 我的环境介绍
先说明,我的在虚拟机中装的Ubuntu 16.04 LTS Xenial。为什么要介绍这个呢?因为这个鸟系统太老了!所以用apt安装的好多工具版本都好老!由此用apt安装就会出现无穷无尽的问题。。。。。所以好多都要自己下源码安装!!
0.2 为什么会有这篇文章记录
因为我最开始是直接用apt install manpages-zh,安装的是一个很老的版本,我将命令alias成cman,去cman socket的时候出来的结果很奇怪,是第三章的内容,而man socket是第二章的内容,然后cman 2 socket直接报错说没结果!!!!后来查看版本才发现安装的manpages-zh的版本很老,很老很老!!所以我就想安装最新版本,但是无法用apt安装,所以就只能自己手动安装了
在Ubuntu 16.04 LTS Xenial上安装最新的Linux manual page(man)中文手册manpages-zh(v1.6.4)
1. 安装manpages-zh需要使用的cmake
我最开始还是用的apt安装cmake,但是版本有不对。manpages-zh要求cmake的版本最少是3.12,但是apt安装的3.5的cmake,所以又要自己源码安装cmake
1.1 下载cmake源码
# cmake官网https://cmake.org/
# 这个是cmake官网的下载地址,但是我用这个下的巨慢,所以我从github上下的,github地址见下面的命令
wget https://github.com/Kitware/CMake/releases/download/v3.28.3/cmake-3.28.3.tar.gz
# github地址
wget https://github.com/Kitware/CMake/archive/refs/tags/v3.28.3.tar.gz
1.2 编译cmake
先要安装各种依赖库
sudo apt-get install build-essential libssl-dev libncurses5-dev unzip
我安装libssl-dev的时候有如下报错
The following packages have unmet dependencies:
libssl-dev : Depends: libssl1.0.0 (= 1.0.2g-1ubuntu4) but 1.0.2g-1ubuntu4.15 is to be installed
Depends: zlib1g-dev but it is not going to be installed
Recommends: libssl-doc but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
处理方法如下,安装各种对应版本的依赖库,再安装
apt-get install libssl1.0.0=1.0.2g-1ubuntu4
apt-get install zlib1g=1:1.2.8.dfsg-2ubuntu4
apt-get install libssl-dev zlib1g-dev libssl-doc
上述依赖库安装完,就应该可以开始了
cd CMake-3.28.3
./bootstrap
# 如果执行完./bootstrap没有任何报错,就可以执行下面的命令,有报错自己去排查,我安装完上面的依赖库后到这里就能正确安装了
make && make install
检查cmake是否OK
root@gsp-VirtualBox:~/CMake-3.28.3# cmake --version
cmake version 3.28.3
CMake suite maintained and supported by Kitware (kitware.com/cmake).
2. 安装manpages-zh需要使用的opencc
不用想了,apt安装的又是低版本!好像是0.4.3版本,但是manpages-zh要的opencc是1.x版本。。。所以只能用源码编译安装了
# 下载源码包
wget https://github.com/BYVoid/OpenCC/archive/refs/tags/ver.1.1.7.tar.gz
# 解压源码包
tar -zxvf ver.1.1.7.tar.gz
# 进入目录,创建build文件夹,准备编
cd OpenCC-ver.1.1.7/
mkdir build
cd build
# 直接从头到尾的一气呵成
cmake .. && make && make install
3. 安装manpages-zh需要使用的python3
自行安装,我已经装过了,就不重头装了,我装的python3.5
4. 下载manpages-zh的源码包,然后编译,编他娘的!!
# 下载的是一个tar.gz的压缩包,但是名字是v1.6.4.0 没有.tar.gz
wget https://codeload.github.com/man-pages-zh/manpages-zh/tar.gz/refs/tags/v1.6.4.0
tar -zxvf v1.6.4.0
#解压完后应该有一个manpages-zh-1.6.4.0的文件夹
cd manpages-zh-1.6.4.0
mkdir build
cd build
# 我只编简体中文,不要繁体中文 没装cmake的,cmake版本不够高的,下面会报错
cmake -DENABLE_ZHCN=ON -DENABLE_ZHTW=OFF ..
# 这里注意要配置一下链接动态链接库.so的路径,反正我的没配置导致报错了
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
# 编译,然后安装, 没opencc/版本不够高的(版本不是1.x),这里报错
make
make install
5. 起别名方便用
在vi /etc/bash.bashrc最下面加一句
alias cman='man -M /usr/local/share/man/zh_CN'
6. 结果检验
man socket结果
cman socket结果
我去!我去!!我去!!!这什么东西啊!!!怎么长这样啊?!辛苦这么久还是错的?我去你XX的!?诶,man出来的是在第二章的,cman出来的是在第三章的?!稳住,别急,试试cman 2 socket结果!
cman 2 socket结果
哎呀我去,吓老子一跳!还以为这七八个小时白费了呢!没事没事!小问题,容我叉会儿腰!
完结撒花
2024年2月24日 02:02:23