小编c_s*_*idl的帖子

OpenCV-NDK更新后对'cv :: CascadeClassifier :: detectMultiScale()的未定义引用

昨天,我将包含NDK的Android Studio更新到版本17.0.4754217,此后,我无法再运行我的应用程序。当我试图更新后重新运行代码,它给我的错误ABIs [mips64, armeabi, mips] are not supported for platform. Supported ABIs are [armeabi-v7a, arm64-v8a, x86, x86_64],所以我在我的排除他们从项目app.gradle文件的方式如下:abiFilters 'x86', 'x86_64', /*'armeabi',*/ 'armeabi-v7a', 'arm64-v8a'/*, 'mips', 'mips64'*/

但是,从那时起,我在使用OpenCV-function的C ++文件中遇到了问题cv::CascadeClassifier::detectMultiScale

它总是显示错误: CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o: In function detectAndDisplay(cv::Mat, double, int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, cv::CascadeClassifier&)': D:\Schule\OpenCV\ARcpp\app\src\main\cpp/native-lib.cpp:158: undefined reference to cv::CascadeClassifier::detectMultiScale(cv::_InputArray const&, std::__ndk1::vector<cv::Rect_<int>, std::__ndk1::allocator<cv::Rect_<int> > >&, double, int, int, cv::Size_<int>, cv::Size_<int>)'.

我把这样的功能:cascadeClassifier.detectMultiScale(frame_gray, sights, scaleFactor, minNeighbours, 0 | CV_HAAR_SCALE_IMAGE, Size(30, 30));。其余代码与OpenCV教程https://docs.opencv.org/2.4/doc/tutorials/objdetect/cascade_classifier/cascade_classifier.html中显示的代码非常相似。

除了NDK之外,我还使用CMake和LLDB,并且包含的​​OpenCV库为openCVLibrary320。再次,所有这些都有效,直到我下载了提到的NDK更新。

始终在构建或执行应用程序时出现的其余错误是: …

c++ android opencv android-ndk android-studio

3
推荐指数
1
解决办法
4212
查看次数

NDK - GNUSTL从NDK中删除后的问题(修订版r18)

今天我将Android Studio NDK更新到最新版本18.0.5002713.在成功安装过程后,我尝试重新运行我的应用程序,但无法这样做.出现的错误如下:org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':app'.

在过去,我在NDK更新后运行我的应用程序时遇到了问题,但是能够通过添加arguments '-DANDROID_STL=gnustl_static'externalNativeBuildapp.gradle文件中的配置来解决它们.

原始问题:(OpenCV - NDK更新后对'cv :: CascadeClassifier :: detectMultiScale()的未定义引用)

通过添加这行代码,我设法在所有NDK r17c版本的其余部分中避免了NDK的任何问题.

不幸的是,对于修订版r18,GNUSTL的支持已经与gabi ++和stlport一起被删除了.

请参阅NDK修订历史记录:https://developer.android.com/ndk/downloads/revision_history

删除现在已弃用的代码行会产生最初是上述问题的原因的错误.现在的问题是什么是最新的等价物arguments '-DANDROID_STL=gnustl_static'

编辑:使用'-DANDROID_STL=c++_static'导致旧错误

先感谢您.

android opencv android-ndk android-studio

3
推荐指数
1
解决办法
2631
查看次数

标签 统计

android ×2

android-ndk ×2

android-studio ×2

opencv ×2

c++ ×1