Я пытаюсь собрать Opencv для приложения arm
, где мне нужно использовать минимум места.
Моя прикладная программа - очень простой детектор изображений на основе каскада LBP.
Включает в себя следующие заголовки
#include <opencv2/opencv.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/objdetect.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/core/types.hpp>
Таким образом, я связываю следующее библиотеки
-lopencv_core -lopencv_imgproc -lopencv_objdetect
-lopencv_highgui -lopencv_imgcodecs
Для этого я начал пытаться собрать opencv с помощью Метод кросс-компиляции . Мой сценарий приведен здесь
cmake -DCMAKE_INSTALL_PREFIX=/path/to/opencv-home/build_arm/install \
-DCMAKE_C_COMPILER=arm-hisiv400-linux-gcc \
-DCMAKE_CXX_COMPILER=arm-hisiv400-linux-g++ \
-DCMAKE_LINKER=arm-hisiv400-linux-g++ \
-D CMAKE_BUILD_TYPE=RELEASE \
-D BUILD_SHARED_LIBS=OFF \
-D INSTALL_C_EXAMPLES=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D OPENCV_GENERATE_PKGCONFIG=ON \
-D OPENCV_ENABLE_NONFREE:BOOL=ON \
-D OPENCV_EXTRA_MODULES_PATH=/path/to/opencv_contrib-home/modules \
-D BUILD_EXAMPLES=ON \
-DCMAKE_TOOLCHAIN_FILE=/path/to/opencv-home/platforms/linux/arm-gnueabi.toolchain.cmake /path/to/opencv-home
Для этого я сталкиваюсь с множеством ошибок, таких как error: ‘exception_ptr’ is not a member of ‘std’
--- МОЙ ВОПРОС --- Можно ли специально построитьOPENCV для платформы arm для заголовков и библиотек, которые я использовал? если да, то как?