Я пытаюсь собрать PocketSphinx для Android с помощью проекта PocketSphinxAndroidDemo. Я отказался от своих попыток создать его с помощью Cygwin и Windows и установил виртуальную машину Ubuntu. Я добиваюсь прогресса, но, кажется, я застрял и не могу этого понять. Это должно быть что-то простое, чего мне не хватает. 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, поэтому я здесь как бы в неведении. Любая помощь будет принята с благодарностью. Спасибо!