将CMU—pocketsphinx之pocketsphinx_continuous移植到嵌入式平台

2019-07-13 02:57发布

本片文章说明的是将pocketsphinx-0.7的pocketsphinx_continuous移植到嵌入式Linux的方法, 前提是pocketsphinx_continuous在PC上已经测试通过。
本人使用OMAP3530开发板,之前已经成功将ALSA相关组建移植完成,这里不作它的相关说明,对于它的移植方法,请参考其他文章。
1:要将其移植到OMAP3530上,就不能想在PC上编译Pocketsphinx一样,直接使用默认配置参了。我们需要根据自己的板子,重新配置相关参数。 2:这里我附上自己的配置,并作简要说明。 和在PC上编译一样,首先编译sphinxbase-0.7,进入该文件夹,输入以下配置: ./configure
--prefix=/home/adai/talon/work/pcapp/pocketsphinx/omap
--exec-prefix=/home/adai/talon/work/pcapp/pocketsphinx/omap
--host=i686-pc-linux-gnu
--target=arm
CC=arm-none-linux-gnueabi-gcc
LDFLAGS="-L/home/adai/talon/work/alsafortarget/alsalib/lib"
CPPFLAGS="-I/home/adai/talon/work/alsafortarget/alsalib/include" 第一行:相关库文件安装目录,这里一般不使用默认目录,以免和PC的安装文件冲突。 第二行:相关可执行程序的安装目录,同上。 第三行:宿主机类型,这个需要根据自己的机器设定,我是在为PC配置时,其输出信息里找到的。 第四行:目标机类型,我的是arm。 第五行:需要使用的交叉编译工具链,需要确保你的工具链已经安装,并且环境参数已经设置好。 第六行:非标准库文件位置,这里是我编译的ALSA库地址(注意,该库也是使用上述CC编译),其次确保已经将该库移植到板子上。 第七行:非标准头文件位置,同上。 3:根据以上配置首先编译sphinxbase-0.7,再编译pocketsphinx-0.7。 4:将生成的pocketsphinx_continuous连通其他必要文件发布到开发板上,测试:./pocketsphinx_continuous -hmm my_db.cd_cont_100 -lm my_
db.lm.DMP -dict my_db.dic
出现了期盼的:READY... 5:完成。