我在stackoverflow和其他一些论坛上尝试了很多解决方案,直到我完全感到沮丧。我正在使用Windows 8和cygwin。我尝试按照
上的教程运行PocketSphinxAndroidDemohttp://cmusphinx.sourceforge.net/2011/05/building-pocketsphinx-on-android/
但我没有成功。我做了什么:
阅读教程,下载所有资源并安装cygwin和swig。然后,第一件不起作用的是cd到sphinxbase文件夹并输入命令./autogen.sh。无论我怎么写它(./ autogen.sh,只有autogen.sh,只有autogen等),这都行不通。好的,我继续学习教程并给出命令configure,make和make install。这很有用,但是当我尝试使用ndk-build构建时,我在cygwin终端上收到了下一条错误消息:
jni / pocketsphinx_wrap.c:760:26:致命错误:pocketsphinx.h:没有这样的文件或目录
我在PocketSphinxAndroidDemo jni-folder Android.mk文件中更改了所有已发布的解决方案Sphinx Path。我尝试过像
这样的东西SPHINX_PATH:= $ / cygdrive / c / Programmierung / DeveloperLibs / CMUSphinx
SPHINX_PATH:= $ / c / Programmierung / DeveloperLibs / CMUSphinx
SPHINX_PATH:= / cygdrive / c / Programmierung / DeveloperLibs / CMUSphinx
SPHINX_PATH:= $ / home / c / Programmierung / DeveloperLibs / CMUSphinx
SPHINX_PATH:= $ / cygdrive / home / Programmierung / DeveloperLibs / CMUSphinx
依此类推......等等没有任何帮助。顺便说一下,定义了本地静态库:
LOCAL_STATIC_LIBRARIES:= pocketsphinx sphinxlm sphinxfeat sphinxfe sphinxutil
这一定是对的,因为这次发布了很多次以改变订单。即便我尝试了
包含$(BUILD_SHARED_LIBRARY)并将其更改为包含$(BUILD_STATIC_LIBRARY)
这些都没有给我一个结果,错误仍然存在......我到底能做些什么才能让它发挥作用?
答案 0 :(得分:1)
然后,第一件不起作用的是cd到sphinxbase文件夹并输入命令./autogen.sh。无论我怎么写它(./ autogen.sh,只有autogen.sh,只有autogen等),这都行不通。
您无需运行autogen.sh
这很有效,但是当我尝试使用ndk-build构建时,我在cygwin终端上收到了下一条错误消息: jni / pocketsphinx_wrap.c:760:26:致命错误:pocketsphinx.h:没有这样的文件或目录
您需要下载包含源的存档,而不是名为win32的存档,仅适用于Windows。 pocketphinx.h文件包含在pocketsphinx-0.8.tar.gz / include。
中编译器具有“标题搜索路径”的概念,在其中找到包含。搜索路径在编译器命令行参数中使用-I选项指定。如果编译器找不到某个文件,则很可能文件位于其他位置,或者未正确指定搜索路径。您需要将文件放在正确的位置或正确指定搜索路径。
答案 1 :(得分:1)
现在我觉得它有用了,我不想回答我自己的问题,但也许它可以帮助其他人解决同样的问题。 Nikolay Shmyrev向我指出了正确的方向,非常感谢他。这里有一个小教程,可以让pocketphinx在windows和android上运行:
https://sites.google.com/site/opiatefuchs/home/pocketsphinxandroiddemo