借鉴地址:https://blog.csdn.net/zdyueguanyun/article/details/51322295
首先检查有没有安装cmake软件,如果没有安装,需要先安装。
安装指令:sudo apt-get install cmake cmake-qt-gui
***************首先配置环境*******************
1.装好依赖库之后,把源码复制到home根目录下
2.用终端打开所在目录
cd opencv-3.2.0
3.在其目录下新建build文件
mkdir bulid
4.在build目录下新建toolchain.cmake文件
cd bulid
vim toolchain.cmake
5.把配置文件放进去
其中CMAKE_C_COMPILER是编译器设置,最好用绝对路径
CMAKE_CXX_COMPILER是C++编译器,也需要用绝对路径
CMAKE_FIND_ROOT_PATH是依赖库存放路径,最好也是用绝对路径。我的依赖库存安装在:/home/zhy/opencv/opencv-depend,因此填写这个。
set( CMAKE_SYSTEM_NAME Linux )
set( CMAKE_SYSTEM_PROCESSOR arm )
set( CMAKE_C_COMPILER arm-none-linux-gnueabi-gcc )
set( CMAKE_CXX_COMPILER arm-none-linux-gnueabi-g++ )
set( CMAKE_FIND_ROOT_PATH "/home/zhy/opencv/opencv-depend" )
set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER )
set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
6.保存环境配置后,运行以下指令,让配置生效
cmake-DCMAKE_TOOLCHAIN_FILE=toolchain.cmake ../
然后打开cmake-gui
指令为:camke-gui
*******************配置cmake*********************************
7.去掉下面这些选项
BUILD_SHARED_LIBS
WITH_1394
WITH_CUDA
WITH_GPHOTO2
WITH_GSTREAMER
WITH_GTK
WITH_JASPER
WITH_MATLAB
WITH_OPENCL
WITH_OPENEXR
WITH_TIFF
点击configure 发现有错误Could not find OpenBLAS include. Turning OpenBLAS_FOUND off
按照网上的教程,开始解决这个问题:
打开OpenCV-3.2.0的cmake文件夹,然后打开 OpenCVFindOpenBLAS.cmake文件。在SET (Open_BLAS_INCLUDE_SEARCH_PATHS下添加:
/usr/include/x86_64-linux-gnu
SET (Open_BLAS_LIB_SEARCH_PATHS 下添加:
/usr/lib/x86_64-linux-gnu
试完了,我这台电脑,好像没有鸟用。还是提示找不到,但是有的人已经成功解决了这个问题。
然后,我在系统里面添加了环境变量,在/etc/profile里面最后一行添加了:
export PATH="$PATH:/home/zhy/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin"、
这个路径是arm-none-linux-gnueabi-gcc编译器所在的绝对路径
8.然后在cmake-gui界面下面点击Generate,退出cmake-gui界面。
9.在build目录下,make 指令,make指令是单进程,即单核操作,如果虚拟机分配的核心数量比较多,可以用make -j4这条指令,这条指令是说,用4个核同时运行,会加快make进程。因为make会耗费挺多时间。