7

PocketSphinxAndroidDemo プロジェクトを使用して Android 用の PocketSphinx をビルドしようとしています。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 の専門家ではないので、ここではわかりません。どんな助けでも大歓迎です。ありがとう!

4

2 に答える 2

2

私の問題を解決しました。多分誰かがこの情報が役に立つと思うでしょう:)

私がしたことは、「ndk-build -B」を使用して、すべての静的ライブラリ プロジェクトとアプリを完全に再構築することでした。

于 2010-12-23T13:23:29.597 に答える
2

jni/Android.mk ファイルの修正

行 162 を変更します。

LOCAL_STATIC_LIBRARIES := sphinxutil sphinxfe sphinxfeat sphinxlm pocketsphinx

に :

LOCAL_STATIC_LIBRARIES := pocketsphinx sphinxlm sphinxfeat sphinxfe sphinxutil

それはあなたの問題を解決します。

于 2012-04-12T17:30:52.503 に答える