0

Eclipse Juno で Android アプリケーション プロジェクトを作成し、このプロジェクトにネイティブ サポートを追加した後 (Android ツール -> ネイティブ サポートを追加)。そのため、Eclipse は自動的にプロジェクトに jni ディレクトリを追加しました。その中に .cpp ファイルと Android.mk ファイルがあります。

次に、エラーなしでプロジェクトをビルドしました。

Android ライブラリ (2.4.5) に opencv を使用するために、プロジェクトにこれらのライブラリの「include」ディレクトリへのパスを追加しました (プロパティ -> C/C++ 一般 -> パスとシンボル -> ディレクトリを含める)。 . また、プロジェクトをビルドするときに ndk-build を実行できるように、Eclipse の設定 -> NDK で PC の ndk ディレクトリへの正しいパスを設定しました。

しかし、.cpp ファイルに含めようとすると:

#include <opencv2/opencv.hpp>

コンソールに次の結果が表示されます。

12:24:25 **** Build of configuration Default for project ProvaVideoCapture ****
"C:\\Users\\Micaela\\Desktop\\Android\\android-ndk-r8e\\ndk-build.cmd" all 
"Compile++ thumb : jniVideoCapture <= jniVideoCapture.cpp
jni/jniVideoCapture.cpp:4:30: fatal error: opencv2/opencv.hpp: No such file or directory
compilation terminated.
make: *** [obj/local/armeabi-v7a/objs/jniVideoCapture/jniVideoCapture.o] Error 1

12:24:26 Build Finished (took 282ms)

私の Android.mk ファイルは次のとおりです。

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    := jniVideoCapture
LOCAL_SRC_FILES := jniVideoCapture.cpp


include $(BUILD_SHARED_LIBRARY)

手動で追加した Application.mk ファイル (Eclipse によって自動的に追加されたわけではありません) は次のとおりです。

APP_ABI := all
APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -fexceptions
APP_PLATFORM := android-9

この問題を解決する方法がわかりません。また、何が間違っていたのかもわかりません。

私たちを手伝ってくれますか?

4

1 に答える 1

0

以下のようなパスをAndroid.mkファイルに追加して確認します

include E:/OpenCV-2.3.1/share/OpenCV/OpenCV.mk

参照用のサンプル Android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

OPENCV_LIB_TYPE:=STATIC
OPENCV_INSTALL_MODULES:=on


include E:/OpenCV-2.3.1/share/OpenCV/OpenCV.mk
include $(OPENCV_MK_PATH)

LOCAL_MODULE    := firstcv
LOCAL_SRC_FILES := first.cpp
LOCAL_LDLIBS +=  -llog -ldl

include $(BUILD_SHARED_LIBRARY)
于 2013-05-14T11:10:07.467 に答える