博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CentOS 5下freeswitch中集成使用ekho实现TTS功能二
阅读量:5955 次
发布时间:2019-06-19

本文共 5321 字,大约阅读时间需要 17 分钟。

三:以上Festival安装完成以后回到ekho安装目录:

执行./configure --enable-festival 前

更改configure

1:替换

#AC_DEFINE(ENABLE_FESTIVAL,,[Enable Festival])

#LIB_FESTIVAL="${srcdir}/lib/libFestival.a ${srcdir}/lib/libestools.a ${srcdir}/lib/libestbase.a ${srcdir}/lib/libeststring.a -lncurses"

#           CFLAG_FESTIVAL="-I${srcdir}/include/festival -I${srcdir}/include/speech_tools"

 

else

  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5

$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}

as_fn_error $? "ncurses test failed

See \`config.log' for more details" "$LINENO" 5; }

fi

 

 

          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lestools" >&5

$as_echo_n "checking for main in -lestools... " >&6; }

if ${ac_cv_lib_estools_main+:} false; then :

  $as_echo_n "(cached) " >&6

else

  ac_check_lib_save_LIBS=$LIBS

LIBS="-lestools

           $LIBS"

cat confdefs.h - <<_ACEOF >conftest.$ac_ext

/* end confdefs.h.  */

 

 

int

main ()

{

return main ();

  ;

  return 0;

}

_ACEOF

if ac_fn_c_try_link "$LINENO"; then :

  ac_cv_lib_estools_main=yes

else

  ac_cv_lib_estools_main=no

fi

rm -f core conftest.err conftest.$ac_objext \

    conftest$ac_exeext conftest.$ac_ext

LIBS=$ac_check_lib_save_LIBS

fi

{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_estools_main" >&5

$as_echo "$ac_cv_lib_estools_main" >&6; }

if test "x$ac_cv_lib_estools_main" = xyes; then :

  cat >>confdefs.h <<_ACEOF

#define HAVE_LIBESTOOLS 1

_ACEOF

 

  LIBS="-lestools $LIBS"

改为:

$as_echo "#define ENABLE_FESTIVAL /**/" >>confdefs.h

 

           LIB_FESTIVAL="${srcdir}/lib/libFestival.a ${srcdir}/lib/libestools.a ${srcdir}/lib/libestbase.a ${srcdir}/lib/libeststring.a -lncurses"

           CFLAG_FESTIVAL="-I${srcdir}/include/festival -I${srcdir}/include/speech_tools"

2:替换

as_fn_error $? "estool test failed

See \`config.log' for more details" "$LINENO" 5; }

fi

 

 

          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lFestival" >&5

$as_echo_n "checking for main in -lFestival... " >&6; }

if ${ac_cv_lib_Festival_main+:} false; then :

  $as_echo_n "(cached) " >&6

else

  ac_check_lib_save_LIBS=$LIBS

LIBS="-lFestival

           $LIBS"

cat confdefs.h - <<_ACEOF >conftest.$ac_ext

/* end confdefs.h.  */

 

 

int

main ()

{

return main ();

  ;

  return 0;

}

_ACEOF

if ac_fn_c_try_link "$LINENO"; then :

  ac_cv_lib_Festival_main=yes

else

  ac_cv_lib_Festival_main=no

改为:

as_fn_error "ncurses test failed (--disable-festival to disable)

See \`config.log' for more details." "$LINENO" 5; }

3去掉:

rm -f core conftest.err conftest.$ac_objext \

    conftest$ac_exeext conftest.$ac_ext

LIBS=$ac_check_lib_save_LIBS

fi

{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Festival_main" >&5

$as_echo "$ac_cv_lib_Festival_main" >&6; }

if test "x$ac_cv_lib_Festival_main" = xyes; then :

 

 

$as_echo "#define ENABLE_FESTIVAL /**/" >>confdefs.h

 

              LIB_FESTIVAL="-lFestival -lestbase -lestools -leststring -lncurses"

              CFLAG_FESTIVAL="-I/usr/include/festival -I/usr/include/speech_tools"

 

else

 

 

$as_echo "#define ENABLE_FESTIVAL /**/" >>confdefs.h

 

              LIB_FESTIVAL="${srcdir}/lib/libFestival.a ${srcdir}/lib/libestools.a ${srcdir}/lib/libestbase.a ${srcdir}/lib/libeststring.a -lncurses"

              CFLAG_FESTIVAL="-I${srcdir}/include -I${srcdir}/include/festival -I${srcdir}/include/speech_tools"

 

 

else

  LIB_FESTIVAL=""

         CFLAG_FESTIVAL=""

 

Fi

4:添加:

else

  with_mp3lame=no

fi

后添加

LIBS="-lasound $LIBS"

5以上更改以后:

在ekho安装目录下:

执行make

出现以下错误:

 

src/libekho.cpp:58:31: 错误:festival/festival.h:没有那个文件或目录

src/libekho.cpp: In member function ‘int ekho::Ekho::initFestival()’:

src/libekho.cpp:252: 错误:‘festival_initialize’ 在此作用域中尚未声明

src/libekho.cpp:257: 错误:‘strintern’ 在此作用域中尚未声明

src/libekho.cpp:257: 错误:‘siod_set_lval’ 在此作用域中尚未声明

src/libekho.cpp:261: 错误:‘festival_load_file’ 在此作用域中尚未声明

src/libekho.cpp:269: 错误:‘festival_tidy_up’ 在此作用域中尚未声明

src/libekho.cpp: In member function ‘int ekho::Ekho::writeToSonicStream(short int*, int, bool, bool)’:

src/libekho.cpp:752: 警告:当转换到 ‘short int’ (从 ‘double’)时

src/libekho.cpp:762: 警告:当转换到 ‘int’ (从 ‘float’)时

src/libekho.cpp: In member function ‘const char* ekho::Ekho::getPcmFromFestival(std::string, int&)’:

src/libekho.cpp:1203: 错误:‘festival_eval_command’ 在此作用域中尚未声明

src/libekho.cpp:1218: 错误:‘EST_Wave’ 在此作用域中尚未声明

src/libekho.cpp:1218: 错误:expected `;' before ‘wave’

src/libekho.cpp:1219: 错误:‘wave’ 在此作用域中尚未声明

src/libekho.cpp:1219: 错误:‘festival_text_to_wave’ 在此作用域中尚未声明

src/libekho.cpp:1225: 错误:‘EST_TVector’ 在此作用域中尚未声明

src/libekho.cpp:1225: 错误:expected primary-expression before ‘short’

src/libekho.cpp:1225: 错误:expected `;' before ‘short’

src/libekho.cpp:1226: 错误:‘tvector’ 在此作用域中尚未声明

make[1]: *** [src/libekho_a-libekho.o] 错误 1

make[1]: Leaving directory `/home/new_uucc_soft/ekho-6.0'

make: *** [all] 错误 2

 

解决方法:

用命令:mkdir /usr/include/festival

        cd /usr/include/festival

拷贝festival.h  fngram.h  intonation.h  lexicon.h  Makefile  ModuleDescription.h  modules.h  module_support.h  Phone.h  text.h

到festival文件夹下

6.回到ekho安装目录下:

执行make:

出现:

g++: ./lib/libFestival.a: No such file or directory

g++: ./lib/libestools.a: No such file or directory

g++: ./lib/libestbase.a: No such file or directory

g++: ./lib/libeststring.a: No such file or directory

make[1]: *** [test_ekho] 错误 1

解决办法:

在ekho安装目录下执行:

cp lib32  lib

在festival和speech_tools的安装目录下面将.a文件

/festival/src/lib/中的libFestival.a拷贝到ekho安装目录下的lib中并覆盖

/speech_tools/lib/中的libestools.a libestbase.a libeststring.a拷贝到ekho安装目录下的lib中并覆盖

最后,执行make && make install ,安装完成

转载于:https://www.cnblogs.com/subo_peng/p/5206121.html

你可能感兴趣的文章
[李景山php]每天laravel-20161005|Validator.php-5
查看>>
php读取大文件详解【OK】
查看>>
Gnome 快捷键汇总
查看>>
通过注册表修改我的文档等系统文件夹默认位置
查看>>
expdp 详解及实例
查看>>
C++中 栈的简单封装
查看>>
我的友情链接
查看>>
Linux常用命令--iconv
查看>>
varnish的了解与常用配置使用
查看>>
Product user profile information 没有导入
查看>>
DELL T410服务器U盘安装Centos7
查看>>
解读最具O2O属性—哈根达斯微信企业号的成功之道
查看>>
Sqlserver2008日志压缩
查看>>
虚拟机usb无线上网同时主机本地上网或无线无线上网
查看>>
View的事件分发机制
查看>>
Android Ndef Message解析
查看>>
mysqldump backup script
查看>>
coding4fun比赛总结
查看>>
Windows Server 2003 系统安装
查看>>
庖丁解牛获取连接状态数的awk数组命令
查看>>