2015-03-20 2 views
0

Iam Новое для Android OpenCV + NDK devlopment. Я хочу узнать самый большой контур на изображении в Android, потому что я пытаюсь создать JNI Integrated OpenCV Android-проект в eclipse. Я включилОшибка сборки с Android + JNI + OpenCV

${NDKROOT}/sources/cxx-stl/gnu-libstdc++/libs/armeabi-v7a/include 
${NDKROOT}/sources/cxx-stl/gnu-libstdc++/include 
${ProjDirPath}/../../sdk/native/jni/include 
${NDKROOT}/platforms/android-9/arch-arm/usr/include 
/usr/include/c++/4.6 
/usr/include 
${NDKROOT}/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/lib/gcc/arm-linux-androideabi/4.8/include 

для проекта -> Свойства -> C/Общие C++ -> Paths и символы -> Включает под GNU C++

Если я пытался построить проект, я все еще получаю построить ошибку.

, показывающий ошибку как 'класс std :: vector>>' не имеет имени с именем 'toArray' в строке Point points = contours.toArray();

Что это за ошибка. Как я могу это решить.

и моя консоль Выход:

* Инкрементальный билд конфигурации по умолчанию для проекта OpenCV-Сквер-Tracking-Android-JNI-мастер **** /дома/dharaniinfotech/Загрузки/андроида-ndk- r10d/ndk-build all Android NDK: ПРЕДУПРЕЖДЕНИЕ: jni/Android.mk: native_sample: несистемные библиотеки в флагах компоновщика: -lboost_system-gcc-mt-1_53 -lboost_regex-gcc-mt-1_53 -lboost_filesystem-gcc-mt -1_53 -lboost_date_time-gcc-mt-1_53
Android NDK: Вероятно, это приведет к неправильной сборке. Попробуйте использовать LOCAL_STATIC_LIBRARIES
Android NDK: или LOCAL_SHARED_LIBRARIES вместо того, чтобы перечислить зависимости библиотека
Android NDK: модуль тока
[armeabi-v7a] Компиляция ++ палец: native_sample < = jni_part.cpp JNI/jni_part.cpp: В функции 'jint Java_org_opencv_samples_tutorial3_Sample3Native_FindSquares (JNIEnv *, jobject, jlong, jint)': jni/jni_part.cpp: 77: 30: error: 'class std :: vector>>' не имеет имени с именем 'toArray' jni/jni_part.cpp : 82: 25: ошибка: нет соответствия для 'operator []' in 'points [i]' make: *
[obj/local/armeabi-v7a/objs-debug/native_sample/jni_part.o] Ошибка 1

Пожалуйста, помогите мне узнать, чего я не вижу.

+0

dude use OpenCV lib для android удобнее –

+0

Я использовал Android OpenCV Library. –

ответ

0

Первая вещь, которую я ошибочно включены

${NDKROOT}/sources/cxx-stl/gnu-libstdc++/libs/armeabi-v7a/include 
${NDKROOT}/sources/cxx-stl/gnu-libstdc++/include 

Они должны быть как

${NDKROOT}/sources/cxx-stl/gnu-libstdc++/4.8/libs/armeabi-v7a/include 
${NDKROOT}/sources/cxx-stl/gnu-libstdc++/4.8/include 

И перейти к анализу кода (правой кнопкой мыши на Проект-> C/C++ General) и выберите использование проекта и снимите флажки.

Смежные вопросы