Проблемы с построением PocketSphinx для Android с помощью NDK

Я пытаюсь построить PocketSphinx для Android с помощью проекта PocketSphinxAndroidDemo. Я отказался от своего стремления построить его с помощью Cygwin и Windows и установил Ubuntu VM. Я делаю прогресс, но я, кажется, застрял, и я не могу понять это. Это должно быть что-то простое, чего мне не хватает. Ndk-build дает следующий вывод (обрезанный):

Compile thumb  : pocketsphinx_jni <= pocketsphinx_wrap.c
/home/user/development/PocketSphinxAndroidDemo/jni/pocketsphinx_wrap.c:760:26: error: pocketsphinx.h: No such file or directory
/home/user/development/PocketSphinxAndroidDemo/jni/pocketsphinx_wrap.c:761:28: error: sphinxbase/err.h: No such file or directory

заголовочные файлы (очевидно) находятся не в той же папке, что и файлы JNI. Флаг LOCAL_C_INCLUDES был установлен в Android.Mk файл для включения необходимых заголовков -

include $(CLEAR_VARS)
LOCAL_C_INCLUDES := $(SPHINX_PATH)/sphinxbase/include/android 
            $(SPHINX_PATH)/sphinxbase/include/sphinxbase 
            $(SPHINX_PATH)/sphinxbase/include 
            $(SPHINX_PATH)/pocketsphinx/include

Я должен отметить, что моя переменная SPHINX_PATH выглядит так, и это правильно -

SPHINX_PATH := ~/development

Если я копирую файлы заголовков в папку /jni/, я получаю дальше, но затем компилятор начинает кричать на меня за файлы заголовков, отсутствующие в других местах. Конечно, я упускаю что-то простое. Нет ли где-нибудь, где я могу установить " поиск в этих местах для заголовочных файлов перед взрывом" флаг?

Я не C / C++ или парень Linux, поэтому я здесь в темноте. Любая помощь будет очень признательна. Спасибо!

2 ответов


решить мою проблему. Может быть, кто-то найдет эту информацию полезной :)

то, что я сделал, было полной перестройкой всех проектов статической библиотеки, а затем мое приложение, используя "ndk-build-B"


изменить jni / Android.Mk file

Изменить Строку 162 :

LOCAL_STATIC_LIBRARIES := sphinxutil sphinxfe sphinxfeat sphinxlm pocketsphinx

в :

LOCAL_STATIC_LIBRARIES := pocketsphinx sphinxlm sphinxfeat sphinxfe sphinxutil

это решит вашу проблему.