opencv源码交叉编译

环境:

  主机:Linux alvin-Lenovo-V310-14ISK 4.13.0-46-generic #51-Ubuntu SMP Tue Jun 12 12:36:29 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

linux下交叉编译arm平台opencv源码步骤:

  1.在官网 https://opencv.org/ 里面的Release里选择需要的版本下载,例如本次作者选择的是OpenCV – 4.1.0

  2.解压源码包:

  unzip opencv-4.1.0

  3.进入源码根目录:

  cd opencv-4.1.0

  4.创建目录:

  mkdir build_arm __install_arm

  其中build_arm目录为编译目录,这是因为不允许编译和源文件在同一目录下,担心编译破坏了原本的源码树。__install_arm目录为安装目录

  5.执行cmake-gui命令:

  cmake-gui&

  加上&是后台运行,在弹出的GUI窗口中进行如下配置,如下图:

  其中Where is the source  code是源码的根目录,Where to build the binaries是进行编译的目录

  然后点击下方 的Configure进行配置

  选择Unix Makefiles类型的Makefile,然后选择交叉编译Specify options for cross-compiling,接着选择Next

  其中C为交叉编译的gcc,C++为交叉编译的g++,Target Root为交叉编译工具链的bin目录,其余的按如上图配置即可。最后点击Finish完成

  其中MAKE_INSTALL_PREFIX配置为前面创建的__install_arm目录即可,

  如果之前本机上没有安装过cmake-gui,需要安装cmake-gui:sudo apt-get install cmake-qt-gui

  6.进行编译:

  make

  可以根据主机cpu的核心数加入-j选项 ,缩短编译时间

  7.安装

  make install

  即会安装到__install_arm目录下

以上为opencv源码交叉编译的步骤

这里多说一下,其实也可以不用cmake-gui这种图形界面进行配置,如果你喜欢命令行的话也可以用cmake加上-D选项配置对应的宏,

官方wiki交叉编译在这里https://gitlab.kitware.com/cmake/community/wikis/doc/cmake/CrossCompiling

很多开源项目的官方wiki是除了源码之外最靠谱的资料,希望大家可以多看wiki

后续会发布读opencv源码的一些理解,持续更新中......

微信公众号:美好程序

原文地址:https://www.cnblogs.com/live-program/p/10991425.html

时间: 2024-11-09 03:18:30

opencv源码交叉编译的相关文章

OpenCV源码之内存分配-指针对齐

首先,为什么要指针对齐(Pointer Alignment)? 指针对齐有时候非常重要,因为许多硬件相关的东西在对齐上存在限制.在有些系统中,某种数据类型只能存储在偶数边界的地址处. 例如,在经典的 SPARC架构(以及经典的ARM)上,你不能从奇数地址读取一个超过1字节的整型数据.尝试这么做将会立即终止程序,并伴随着总线错误.而在X86架构上,CPU硬件处理了这个问题,只是这么做将会花费更多时间:通常RISC架构是不会为你做这些.举例如下: char c; char *Pc = &c; int

opencv源码分析:cvCreateTreeCascadeClassifier

我使用的是opencv2.4.9,cvCreateTreeCascadeClassifier的源码在......opencv\sources\apps\haartraining\cvhaartraining.cpp之中,这中间用到很多结构体,指针函数,宏等各方面的内容,请参考我博客中的文章opencv源码详细解读目录.如需转载请注明本博网址http://blog.csdn.net/ding977921830?viewmode=contents.具体内容如下: /* * cvCreateCasca

OpenCV源码解析

OpenCV K-means源码解析 OpenCV 图片读取源码解析 OpenCV 视频播放源码解析 读懂OpenCV源码需要哪些基础? 通读过C++ Primer,目前C++属于入门级, 数字图像处理基础也有.目前看不懂OpenCV源码,请问还需要哪些基础, 从哪些方面入手源码比较好呢?谢谢 回答: 半年前实习的时候,在那个公司参与用OpenCV c++版本的开发公司自己的CV库.体会还比较深,现在回想起来,大概会有这么一些建议: 1. C++需要多了解一下,建议看看Bjarne大神的书 Op

opencv源码编译

环境: 主机:Linux alvin-Lenovo-V310-14ISK 4.13.0-46-generic #51-Ubuntu SMP Tue Jun 12 12:36:29 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux linux下编译opencv源码步骤: 1.在官网 https://opencv.org/ 里面的Release里选择需要的版本下载,例如本次作者选择的是OpenCV – 4.1.0 2.解压源码包: unzip opencv-4.1.0

OpenCV学习:OpenCV源码编译(vc9)

安装后的OpenCV程序下的build文件夹中,只找到了vc10.vc11和vc12三种编译版本的dll和lib文件,需要VS2010及以上的IDE版本,而没有我们常用的VS2008版本. 于是,需要的小伙伴们可以自己动手,丰衣足食! 1). 安装CMake cmake-2.8.8-win32-x86.exe (http://www.cmake.org/cmake/resources/software.html) 百度云盘:http://pan.baidu.com/s/1dEYbx77  密码:

OpenCV 源码中分水岭算法 watershed 函数源码注解

为了研究分水岭算法,阅读了OpenCV 2.4.9 中watershed函数的源码实现部分,代码位于 opencv\sources\modules\imgproc\src\segmentation.cpp 文件中.先贴出加了注解的代码,以后补充对分水岭算法的解释. #include "precomp.hpp" /******************************************************* Watershed **********************

全景视频拼接(二)--OpenCV源码解析

本文参考:http://blog.csdn.net/skeeee/article/details/19480693,做了一定修改和补充. 一.stitching_detail程序运行流程 1.命令行调用程序,输入源图像以及程序的参数 2.特征点检测,判断是使用surf还是orb,默认是surf. 3.对图像的特征点进行匹配,使用最近邻和次近邻方法,将两个最优的匹配的置信度保存下来. 4.对图像进行排序以及将置信度高的图像保存到同一个集合中,删除置信度比较低的图像间的匹配,得到能正确匹配的图像序列

如何修改调试OpenCV源码

有时候,直接调用OpenCV的接口并不能满足我们的需求,需要我们对源码及其算法进行修改.这里就介绍一下如何修改OpenCV的源码.首先,要用cmake编译一下OpenCV:然后,就是修改源码了:接着,配置新生成的dll和lib:最后,测试. 一.cmake编译OpenCV 1.下载安装cmake 想要在Windows平台下生成OpenCV的解决方案,我们需要一个名为cmake的开源软件,可以在 camke的官网:http://www.cmake.org/上下载到,首先转到其下载页面. 而Bina

opencv源码之一:cvboost.cpp

我使用的是opencv2.4.9,安装后,我的cvboost..cpp文件的路径是........\opencv\sources\apps\haartraining\cvboost.cpp,研究源码那么多天,有很多收获,opencv库真是非常强大.具体内容如下: /*M/////////////////////////////////////////////////////////////////////////////////////// // // IMPORTANT: READ BEFOR