编译安装opencc繁简转换扩展
编译安装opencc繁简转换扩展
github开源项目opencc,支持多种语言的扩展,进行中文简体繁体转换
由于公司用php语言,额外加了自动加入php扩展的内容
系统支持:
- 红帽系
- ubuntu
安装扩展
#!/bin/bash
#********************************************************************
# File Name: xx.sh
# Version: V1.0
# Author: dahuangji
# Email:
# Created Time : 2023-06-02 14:40:35
# Description:
#********************************************************************
set -eu
install_opencc(){
yum install -y doxygen make gcc gcc-c++ cmake || apt install -y doxygen make gcc gcc-c++ cmake
gcc_vs=`gcc --version|awk 'NR==1{print $3}'|cut -d'.' -f1`
cd /usr/local/src/
[ -d OpenCC ] || git clone https://github.com/BYVoid/OpenCC.git
cd OpenCC/
install_cmake
if [[ $gcc_vs -lt 8 ]] ;then
sed -ri 's#(.*-std=)c\+\+14$#\1c\+\+11#' CMakeLists.txt
fi
make -j 4 && make install
if [ $? -ne 0 ] ;then
return 1
fi
link_files=`find /usr/lib -name 'libopencc.so*'`
for i in $link_files ; do
link_name=`basename $i`
ln -sfT $i /usr/lib64/$link_name
echo "/usr/lib64/$link_name" > /usr/share/opencc/file.info
done
cd .. && rm -rf OpenCC
}
install_phpext(){
php_bin=`which phpize`
php_bin_conf=`which php-config`
ini_dir=`php -i|grep 'Scan' |awk '{print $NF}'`
cd /usr/local/src/
[ -d opencc4php ] || git clone https://github.com/nauxliu/opencc4php.git
cd opencc4php/
[ -f Makefile ] && make clean
$php_bin
./configure --with-php-config=$php_bin_conf --with-opencc=/usr/share/opencc/
make -j 4 && make install
echo 'extension=opencc.so' > $ini_dir/opencc.ini
echo "$ini_dir/opencc.ini" >> /usr/share/opencc/file.info
find /usr/ -name '*opencc*' >> /usr/share/opencc/file.info
}
#opencc的源码编译时,依赖的cmake版本有问题,最低要3.10
install_cmake(){
cmake_vs1=`cmake /V |awk 'NR==1{print $NF}' |cut -d'.' -f1`
cmake_vs2=`cmake /V |awk 'NR==1{print $NF}' |cut -d'.' -f2`
require_vs1=3
require_vs2=10
if [[ $cmake_vs1 -le $require_vs1 ]] ;then
if [[ $cmake_vs2 -lt $require_vs2 ]] ;then
wget https://github.com/Kitware/CMake/releases/download/v3.26.4/cmake-3.26.4-linux-x86_64.tar.gz
tar xf cmake-3.26.4-linux-x86_64.tar.gz
mv cmake-3.26.4-linux-x86_64 /usr/local/cmake
echo 'export PATH=/usr/local/cmake/bin:$PATH' > /etc/profile.d/cmake.sh
. /etc/profile &> /dev/null
fi
fi
}
install_opencc && install_phpext
删除扩展
#!/bin/bash
#********************************************************************
# File Name: uninstall.sh
# Version: V1.0
# Author: dahuangji
# Email:
# Created Time : 2023-06-02 15:11:28
# Description:
#********************************************************************
set -e
uninstall_opencc(){
remove_files=`cat /usr/share/opencc/file.info`
cd /usr/share/opencc/
for i in $remove_files ;do
rm -rf $i
done
}
uninstall_opencc

浙公网安备 33010602011771号