OpenCV v3.3.1 кросс-компиляция для ошибок ARM: CMAKE_CXX_COMPILER не найден

Я следовал этому уроку, Кросс-компиляция для систем Linux на основе ARM, для того, чтобы построить Opencv версия 3.3.1 с использованием cmake для системы Linux на основе ARM (Ubuntu Mate работает на ODROID-XU4 Mini PC). Для процесса сборки я бегу Ubuntu Mate v 16.04.1 x86,

Обратите внимание, что я уже пытался собрать ту же версию Opencv для меня Intel x86 Ubuntu based запустить машину, следуя этому руководству, Установка Opencv в Linux, и я сделал это успешно. Однако при создании его для ARM на той же машине я получил следующую ошибку.

-- The CXX compiler identification is unknown
-- The C compiler identification is unknown
CMake Error at CMakeLists.txt:114 (project):
No CMAKE_CXX_COMPILER could be found.

Tell CMake where to find the compiler by setting either the environment
variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
to the compiler, or to the compiler name if it is in the PATH.CMake Error at CMakeLists.txt:114 (project):
No CMAKE_C_COMPILER could be found.

Tell CMake where to find the compiler by setting either the environment
variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
the compiler, or to the compiler name if it is in the PATH.-- Configuring incomplete, errors occurred!
See also "/home/jhon/Programs/opencv-3.3.1/arm/CMakeFiles/CMakeOutput.log".
See also "/home/jhon/Programs/opencv-3.3.1/arm/CMakeFiles/CMakeError.log".

Вот моя командная строка, которая генерирует эту ошибку:

cmake -DCMAKE_TOOLCHAIN_FILE=../platforms/linux/arm-gnueabi.toolchain.cmake ..

Обратите внимание, что опция -DCMAKE_TOOLCHAIN_FILE это то, что говорит cmake собрать Opencv для систем Linux на базе ARM, и когда я попытался удалить его, я успешно закончил сборку Opencv для моей машины x86 без ошибок.

Заранее спасибо.

1

Решение

Документация OpenCV говорит только для установки С кросс-компилятор (пакет gcc-arm-linux-gnueabi), но на самом деле OpenCV требует C ++ компилятор тоже.

Так что нужно установить g++-arm-linux-gnueabi пакет, а также.

1

Другие решения

Мне всегда было интересно, почему не существует готовых двоичных файлов для Opencv-Linux (и я до сих пор не знаю, почему), поэтому здесь я выкладываю свою работу на всеобщее обозрение, чтобы извлечь из нее выгоду, поскольку она включает в себя предварительно собранные версии Opencv 3.3.1 для Linux x86, x64 и armv7hf (включая соответствующие двоичные файлы Java).

OpenCV Linux x86, x62 & исполняемые файлы armv7hf

0

По вопросам рекламы [email protected]