环境: opensuse   opencv3.4.1    交叉编译器arm-openwrt-linux  作者:帅得不敢出门

https://github.com/opencv/opencv/tree/3.4.1

选择右边的"clone or download"按钮进行下载,选择下载zip

我下的是opencv-3.4.1.zip, 3.4.1的版本号

https://github.com/opencv/opencv_contrib

下载,因为这个相对会小些,所以我选择git直接下载,大家可以下载3.4.1的zip的包,版本要与opencv的版本一致就行,下zip会快些

git clone https://github.com/opencv/opencv_contrib

与opencv同一文件夹下

解压

然后cd opencv-3.4.1

编译pc端的:

mkdir build && cd build

编译

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules/ ../

如果要编译python3的请在cmake 后面加-D BUILD_opencv_python3=ON

make -j4

出错:

opencv-3.4.1/modules/python/src2/cv2.cpp:14:10: fatal error: numpy/ndarrayobject.h: 没有那个文件或目录

#include

compilation terminated.

出错:

-- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)

-- Could NOT find Matlab (missing: MATLAB_MEX_SCRIPT MATLAB_INCLUDE_DIRS MATLAB_ROOT_DIR MATLAB_LIBRARIES MATLAB_LIBRARY_DIRS MATLAB_MEXEXT MATLAB_ARCH MATLAB_BIN)

-- VTK is not found. Please set -DVTK_DIR in CMake to VTK build directory, or to VTK install subdirectory with VTKConfig.cmake file

-- Looking for dlerror in dl

-- Looking for dlerror in dl - found

-- Caffe:   NO

-- Protobuf:   NO

-- Glog:   NO

CMake Error at /home/zm/下载/opencv_contrib/modules/datasets/CMakeLists.txt:5 (ocv_append_source_files_cxx_compiler_options):

Unknown CMake command "ocv_append_source_files_cxx_compiler_options".

这是因为open_contrib版本与opencv版本不一致导致,进入open_contrib源码目录,执行git checkout 3.4.1,或者官网下载open_contrib.3.4.1.zip

解决方法:

安装python2-numpy-devel

编译成功后安装

sudo make install

编译arm端 :

cp platforms/linux/arm-gnueabi.toolchain.cmake platforms/linux/arm-openwrt.toolchain.cmake

编辑platforms/linux/arm-openwrt.toolchain.cmake

因为我的交叉编译器前缀是xx

set(GNU_MACHINE "arm-linux-gnueabi" CACHE STRING "GNU compiler triple")

改成

set(GNU_MACHINE "arm-openwrt-linux" CACHE STRING "GNU compiler triple")

mkdir build_openwrt

cd build_openwrt

cmake -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules -DCMAKE_INSTALL_PREFIX=./install -DCMAKE_TOOLCHAIN_FILE="../platforms/linux/arm-openwrt.toolchain.cmake" -DCMAKE_CXX_FLAGS="-DTBB_USE_GCC_BUILTINS=1 -D__TBB_64BIT_ATOMICS=0 -mcpu=cortex-a7 -mfloat-abi=hard -mfpu=neon-vfpv4"  -DSOFTFP=ON -DWITH_OPENCL=OFF -DWITH_TBB=ON  -DWITH_V4L=ON -DHAVE_CAMV4L2=ON -DENABLE_VFPV3=ON -DENABLE_NEON=ON -DBUILD_TESTS=OFF -DINSTALL_PYTHON_EXAMPLES=OFF -DBUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=Release -DWITH_FFMPEG=ON -DHAVE_FFMPEG=ON ../

#-D FFMPEG_INCLUDE_DIR="/home/zengming/download/ffmpeglib/include" -D FFMPEG_LIB_DIR="/home/zengming/download/fmpeglig/lib" ../

如果不加-DSOFTFP=ON有可能会出现找不到交叉编译器的情况

-- The CXX compiler identification is GNU 7.3.1

-- The C compiler identification is GNU 7.3.1

-- Check for working CXX compiler: /usr/bin/c++

-- Check for working CXX compiler: /usr/bin/c++ -- broken

CMake Error at /usr/share/cmake/Modules/CMakeTestCXXCompiler.cmake:45 (message):

The C++ compiler

"/usr/bin/c++"

开始编译

make -j4

make install

ming window 交叉编译_opencv3编译pc端及交叉编译arm端相关推荐

  1. linux 汇编 `.eabi_attribute',交叉编译arm-none-eabi-gcc编译汇编文件(startup_stm32f10x_hd.S)遇到的有关问题(2)...

    当前位置:我的异常网» Linux/Unix » 交叉编译arm-none-eabi-gcc编译汇编文件(startup_s 交叉编译arm-none-eabi-gcc编译汇编文件(startup_s ...

  2. Hi3516EV200 编译环境配置及交叉编译软件包

    原文地址:Hi3516EV200 编译环境配置及交叉编译软件包 - WindSpiritIT 基础信息 OS: Ubuntu 16.04 xenial SDK 版本: Hi3516EV200R001C ...

  3. 杰奇小说站PC端跳转WAP端实现方式

    杰奇小说站PC端跳转WAP端实现方式 其实这个实现方式有多重,这里我们采用一个经常用的方式,JS跳转. 通过JS跳转,可以判断设备,然后自动跳转到WAP(毕竟现在是智能机的天下) 这里我们以读爱小说网 ...

  4. 树莓派交叉编译 内核编译 - HQ

    树莓派交叉编译 & 内核编译 - HQ 文章目录 树莓派交叉编译 & 内核编译 - HQ @[toc] 注意 树莓派交叉编译 引入 交叉编译工具链的安装 交叉编译使用举例 树莓派源码分 ...

  5. js如何判断用户是在pc端和还是移动端访问

    js如何判断用户是在pc端和还是移动端访问 来源:A5技术交流 作者:wofa 时间:2014-04-25收藏本页 最近一直在忙我们团队的项目"咖啡之翼",在这个项目中,我们为移动 ...

  6. 在Linux下使用树莓派交叉编译工具编译opencv库并进行移植

    一.交叉编译opencv 继上一篇博客:"在Linux下配置opencv"之后,我以为直接将编译命令:g++ `pkg-config --cflags opencv` -o Tes ...

  7. pc端页面在移动端等比例缩放

    pc端页面在移动端等比例缩放 两步: 1.替换head标签内 name="viewport"的 meta标签 <!-- pc端在手机端等比例缩放 --> <met ...

  8. 【Android NDK 开发】NDK 交叉编译 ( NDK 函数库目录 | Linux 交叉编译环境搭建 | 指定头文件目录 | 指定函数库目录 | 编译 Android 命令行可执行文件 )

    文章目录 I . NDK platforms 目录下的 函数库 II . Ubuntu 配置 NDK 交叉编译环境 III . 同时指定编译的头文件和库文件 IV . 指定编译的头文件 V . 指定编 ...

  9. PC端和移动APP端CSS样式初始化

    CSS样式初始化分为PC端和移动APP端 1.PC端:使用Normalize.css Normalize.css是一种CSS reset的替代方案. 我们创造normalize.css有下面这几个目的 ...

最新文章

  1. 用数据分析《你好,李焕英》“斐妈”爆红的真相
  2. python环境下,执行系统命令方法
  3. 博弈论笔记:谈判与讨价还价
  4. 【年度学术大会合集】SIGGRAPH,KDD,AAAI,NIPS…这些你想参加的会议
  5. 设计模式C++学习笔记之十三(Decorator装饰模式)
  6. C# 视频监控系列(6):服务器端——封装API(上)(1)
  7. mysql pxc 报错_登录mysqlpxc报错找不到库文件libreadline.so.7
  8. java用netty做tcpserver接收c++消息_netty案例,netty4.1基础入门篇四《NettyServer收发数据》...
  9. ultraedit查找每行第二个单词_算法4th3:查找
  10. ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?
  11. CANape中使用vCDMStudio批量标定
  12. 2007年7月27日
  13. Twaver-HTML5基础学习(38)劈分面板SplitPane
  14. jquery fadein css同时用,如何同时运行jQuery fadeIn()和slideDown()?
  15. 车载syu一android密码,教务系统找回密码
  16. 飞书接入ChatGPT - 将ChatGPT集成到飞书机器人,直接拉满效率
  17. android判断两个图片相同,android中比较两张图片的相似度
  18. 使用CMake构建/开始使用CMake
  19. javaScript 如何使用js追加字符串呢?
  20. wps的pdf高亮后怎么取消_pdf高亮文本怎么取消及修改

热门文章

  1. Git 克隆远程项目到本地_01
  2. idea 提示接口注释信息
  3. Microsoft Windows Server 2019 1809 iso镜像 企业版本
  4. RabbitMQ的5种队列_Work模式_入门试炼_第5篇
  5. Jenikns新建节点、配置节点、新建任务、配置任务、脚本验证
  6. gitlab+jenkins+sonar做代码质量分析
  7. 蓝牙打印和网口打印的实现
  8. 爬虫学习日记 Day1 什么是request,respond,url,headers
  9. 光动能表怎么维护_男士手表什么牌子好,男士手表品牌推荐, 天梭、阿玛尼、西铁城、天王表、罗西尼、卡西欧男手表推荐...
  10. git status查看文件的状态