编译pocketphinx for Android时出错

时间:2011-10-11 11:08:26

标签: android eclipse cmusphinx

我正在尝试为Android编译pocketsphinx,并且在编译期间出现以下错误:

/home/spodder/Speech/PocketSphinxDemo/jni/pocketsphinx_wrap.c: At top level:
/home/spodder/Speech/PocketSphinxDemo/jni/pocketsphinx_wrap.c:1518: fatal error: opening dependency file /home/spodder/Speech/PocketSphinxDemo/obj/local/armeabi/objs-debug/pocketsphinx_jni/pocketsphinx_wrap.o.d.org: Permission denied
compilation terminated.
make: *** [/home/spodder/Speech/PocketSphinxDemo/obj/local/armeabi/objs-debug/pocketsphinx_jni/pocketsphinx_wrap.o] Error 1

我已按照http://cmusphinx.sourceforge.net/2011/05/building-pocketsphinx-on-android/comment-page-1/

中提到的所有步骤操作

文件pocketsphinx_wrap.o.d.org甚至不存在,但pocketphinx_wrap.o.d存在于指定位置。

我将pocketsphinx_wrap.o.d复制到pocketsphinx_wrap.o.d.org,并为每个人提供了rwx权限。仍然会发生错误。

但是,当我运行它运行的应用程序时,会在logcat中看到以下错误

E/AndroidRuntime(  368):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
E/AndroidRuntime(  368):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
E/AndroidRuntime(  368):    at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime(  368): Caused by: java.lang.UnsatisfiedLinkError: Library pocketsphinx_jni not found
E/AndroidRuntime(  368):    at java.lang.Runtime.loadLibrary(Runtime.java:461)
E/AndroidRuntime(  368):    at java.lang.System.loadLibrary(System.java:557)
E/AndroidRuntime(  368):    at edu.cmu.pocketsphinx.demo.PocketSphinxDemo.<clinit>(PocketSphinxDemo.java:19)

有没有其他人遇到过类似的问题? 这是否必须对文件权限执行任何操作,或者由于发生错误而错误地设置了文件名?

提前致谢!!

1 个答案:

答案 0 :(得分:1)

删除ndk构建表单Eclipse解决了这个问题。

由于编译错误是在编译本机代码时,这是 已经从命令行外部构建,没有错误。