纯净离线环境下安装Ekho语音服务器

纯净离线环境搭建Ekho语音服务器

Cent OS7.6 无gcc环境 无网络

Ekho需要c++编译环境,所以需要安装gcc,离线下源码编译步骤如下:

参照 https://www.jb51.net/article/230581.htm
文件资源地址:https://pan.baidu.com/s/1OPVtKXCgK4J7c1S6X63HPw 提取码 cwc7

执行命令 mkdir /usr/local/tts_server

执行命令 mkdir /usr/local/tts_server/env

执行命令 cd /usr/local/tts_server/env

注意(如果是纯净环境:无网络/无c环境则按照下面表格步骤进行)

一、安装旧版本gcc

将资源文件包下gcc/rpm所有文件夹上传到服务器/usr/local/tts_server/env下,并在上传的每一个文件夹中执行命令 rpm -ivh *.rpm --nodeps --force

二、编译gmp

按照下面gmp安装方式进行安装,如果出现关于m4的Permission denied(无权限问题),执行命令chmod +x mpn/m4-ccas 然后 执行 make clean./configure 最后 make&&make install

三、编译mpfr

按照下方的mpfr安装步骤进行,值得注意的是,再安装mpfr之前需要确定libtool已经安装。可能会出现问题:WARNING: ‘aclocal-1.15’ is missing on your system。
解决方案:
一、先安装autoconf(在资源文件包/gcc下面)
1.tar -xvf autoconf-2.68.tar.gz
2.cd autoconf-2.68
3../configure
4. make&&make install}

二、安装automake(在资源文件包/gcc下面)
1.tar -xvf automake-1.16.tar.gz
2.cd automake-1.16
3../configure
4.在编译后的Makefile中需要在Makefile文件中3694行最后加上--no-discard-stderr
5.make&&make install
6.出现"none" is not exported by the List::Util module 需要修改 /usr/local/bin/automake中将76行use List::Util ‘none’; 改为 use List::Util;即可

四、编译mpc如下步骤正常进行

五、编译gcc

其它步骤按下述内容进行

在编译Gcc时如果出现error while loading shared libraries: libmpfr.so.6: cannot open shared object file: No such file or directory,那么就将libmpfr.so.6.0.2 和libmpfr.so.6上传至/usr/local/lib 并执行 mv libmpfr.so.6.1.0 libmpfr.so.6 有时候也需要在/usr/local/路径下执行相同步骤

编译gcc时需要注意,每一次更换文件或者其它指令后都需要执行一次 make clean 在执行其它的部分

至此纯净环境下gcc安装全部完成,执行 gcc -v 会发现gcc已经是10版本了


  • Gmp安装
1.将gmp-6.2.1.tar.bz2压缩包上传至 /usr/local/tts_server/env 
2.执行命令 tar -xjf gmp-6.2.1.tar.bz2 解压压缩包。
3.cd gmp-6.2.1。
4../configure
5.执行命令 make && make install 进行编译安装。
  • Mpfr安装
1.将mpfr-4.1.0.tar.bz2压缩包上传至 /usr/local/tts_server/env
2.执行命令 tar -xjf mpfr-4.1.0.tar.bz2 解压压缩包。
3.cd mpfr-4.1.0 。
4../configure  --with-gmp=/usr/local/tts_server/env/gmp-6.2.1 。
5.执行命令 make && make install 进行编译安装。
  • Mpc安装
1.将mpc-1.2.1.tar.gz压缩包上传至 /usr/local/tts_server/env
2.执行命令 tar -xvf mpc-1.2.1.tar.gz 解压压缩包。
3.cd mpc-1.2.1/ 。
4../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib --with-gmp=/usr/local/tts_server/env/gmp-6.2.1 --with-mpfr=/usr/local/tts_server/env/mpfr-4.1.0 
5.执行命令 make && make install 进行编译安装。
  • Gcc安装
1.上传gcc-10.1.0.tar.gz至 /usr/local/tts_server/env
2.执行 tar -xvf gcc-10.1.0.tar.gz 。
3.cd gcc-10.1.0
4../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib --with-gmp=/usr/local/tts_server/env/gmp-6.2.1 --with-mpfr=/usr/local/tts_server/env/mpfr-4.1.0 --with-mpc=/usr/local/tts_server/env/mpc-1.2.1
5.make -j2 。
6.提示找不到libmpfr.so.6.1.0则:上传libmpfr.so.6.1.0至 /usr/lib64 并在/usr/lib64路径下执行	ln -s /usr/lib64/libmpfr.so.6.1.0 libmpfr.so.6 。
7.重新进入到 /usr/local/tts_server/env/gcc-10.1.0/build 路径下  执行 make -j2   (比较耗时,请耐心等待)。
8.make install
下面步骤在纯净模式进行
9.卸载之前的gcc yum -y remove gcc gcc-c++ 
10.make install
11.echo 'export PATH=/usr/local/tts_server/envgcc-10.1.0/bin:$PATH' >> /etc/profile
12.exit	# 执行后需要重启终端窗口

安装ekho所需环境

  • Libsndfile安装
1.上传 libsndfile-1.0.28.tar.gz至/usr/local/tts_server/env 路径。
2.tar -xvf libsndfile-1.0.28.tar.gz
3.cd libsndfile-1.0.28
4../configure  --prefix=/usr/local/tts_server/env/libsndfile-1.0.28 CFLAGS=-fPIC   --enable-shared \
5.make && make install
6.安装后执行 sudo cp /usr/local/lib/pkgconfig/sndfile.pc /usr/lib64/pkgconfig/
  • portaudio安装
1.上传portaudio-master至/usr/local/tts_server/env 路径。
2.进入文件夹
3../configure
4.make && make install
  • pulseaudio-libs-devel-10.0-6.el7_9.x86_64安装
1.上传pulseaudio-libs-devel-10.0-6.el7_9.x86_64.rpm至/usr/local/tts_server/env 路径。
2.rpm -ivh pulseaudio-libs-devel-10.0-6.el7_9.x86_64.rpm --nodeps
  • Libtool安装
1.上传libtool-2.4.6.tar.gz至/usr/local/tts_server/env 路径。
2.tar -xvf libtool-2.4.6.tar.gz
3.进入解压文件
4../configure
5.make && make install
  • lame-3.100安装
1.上传lame-3.100.tar.gz至/usr/local/tts_server/env 路径。
2.tar -xvf lame-3.100.tar.gz
3.进入解压文件
4../configure
5.Make && make install
  • libpulse-devel-15.0-150400.2.10.x86_64安装
1.上传libpulse-devel-15.0-150400.2.10.x86_64.rpm至/usr/local/tts_server/env 路径。
2.rpm -ivh libpulse-devel-15.0-150400.2.10.x86_64.rpm --nodeps
  • pulseaudio-13.0安装
1.上传pulseaudio-13.0.tar.xz至/usr/local/tts_server/env 路径。
2.tar -xvf pulseaudio-13.0.tar.xz
3.进入解压文件夹
4../configure --without-caps
5.Make && make install
5.出现错误不用管,此文件作为库函数使用
  • espeak安装
1.上传espeak-1.48.04-source至/usr/local/tts_server/env 路径。
2.进入目录
3.Cd src
4.Make && make install

可能遇到如下错误
在这里插入图片描述
在这里插入图片描述

则打开相应文件在错误行前加上(char),如下:

在这里插入图片描述

  • 安装ekho
1.上传ekho-7.6.tar.xz至/usr/local/tts_server/env 路径。
2.tar -xvf ekho-7.6.tar.xz
3.cd ekho-7.6
4../configure
5.make &&make install

可能报如下错误
在这里插入图片描述

解决方式:

cd /etc/ld.so.conf.d
vi localusr.conf
输入内容 /usr/local/lib/ 保存退出
ldconfig

至此安装完成,执行命令ekho -v Mandarin -s 20 -a 50 "这是测试音频" -o 1.mp3进行测试

安装过程中可能会出现一些其它情况,请合理面向百度编程

笔者这里是项目内语音播报功能实现,使用JSch远程连接服务器执行脚本命令,生成的音频文件以blob对象的形式传递给前端。这里顺带说一嘴,提供一个思路。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值