您的位置:首页 > 运维架构 > Linux

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

2012-08-31 17:55 357 查看
本片文章说明的是将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:完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息