1.android.mkのLOCAL_SRC_FILESにfooを宣言しているファイル(例えばfoo.c)があることを確認
LOCAL_SRC_FILES := foo.c2.(fooがcppファイルで宣言されていて、cファイルからの参照するときにエラーが出る場合のみ) foo()を宣言しているヘッダがextern "C"{}で囲われていることを確認(includeガードをしている場合は最初のincludeでこうなっていることを確認)
extern "C" { #include "foo.h" }
3.(別のライブラリとしてビルドしている場合のみ)android.mkのライブラリー関連の記述が正しいか確認
以下のようにfoo.cを含むライブラリーを静的ライブラリとしている場合は、
LOCAL_MODULE := bar
LOCAL_SRC_FILES := foo.c
include $(BUILD_STATIC_LIBRARY)
呼び出し側のライブラリの記述に以下を追加
LOCAL_STATIC_LIBRARIES := bar
共有ライブラリとしている場合( include $(BUILD_SHARED_LIBRARY) )は
LOCAL_SHARED_LIBRARIES := bar
0 件のコメント:
コメントを投稿