当前位置: 首页 > news >正文

「OpenCV交叉编译」ubuntu to arm64

  • Ubuntu x86_64 交叉编译OpenCV 为 arm64
  • OpenCV4.5.5、cmake version 3.16.3
  • 交叉编译器 gcc-arm-10.2-2020.11-x86_64-aarch64-none-linux-gnu
    可在arm或linaro官网下载所需版本,本文的交叉编译器可点击链接跳转下载
    Downloads | GNU-A Downloads – Arm Developer
    Linaro Releases
  1. 打开opencv源码文件夹,新建build文件夹
    • 若已存在build文件夹,说明之前编译过,可删除
  2. 打开CMake gui
    • 填写opencv安装路径
    • 填写opencv文件夹下刚创建的build路径,用于存放编译文件

    请添加图片描述

  3. 若没有配置交叉编译器的环境变量,需要手动为OpenCV指定交叉编译器的路径

    (若没有添加路径直接Configure会报错!此时需要在 File -> Delete Cache 清空缓冲再重新配置!)

    • 打开/home/alexios/OpenCV/opencv-4.5.5/platforms/linux/aarch64-gnu.toolchain.cmake

    • 设置编译器的路径,链接器ld不需要设置,CMake能够根据CMAKE_C_COMPILERCMAKE_CXX_COMPILER找到对应的链接器

    set(CMAKE_SYSTEM_PROCESSOR aarch64)
    set(GCC_COMPILER_VERSION "" CACHE STRING "GCC Compiler version")# 设置交叉编译工具链的路径
    set(TOOLCHAIN_PATH "/home/alexios/linux_ws/tool/gcc-arm-10.2-2020.11-x86_64-aarch64-none-linux-gnu" CACHE STRING "Path to custom toolchain")
    # 设置交叉编译器
    set(CMAKE_C_COMPILER "${TOOLCHAIN_PATH}/bin/aarch64-none-linux-gnu-gcc")
    set(CMAKE_CXX_COMPILER "${TOOLCHAIN_PATH}/bin/aarch64-none-linux-gnu-g++")set(GNU_MACHINE "aarch64-linux-gnu" CACHE STRING "GNU compiler triple")
    include("${CMAKE_CURRENT_LIST_DIR}/arm.toolchain.cmake")
    
  4. 点击Configure
    • 选择Unix Makefiles 下的指定交叉编译工具链文件夹

    请添加图片描述

    • 目标arm板为RK3588,arm64架构的,选择与开发板相同架构的cmake

    请添加图片描述请添加图片描述

  5. 配置OpenCV模块和CMake编译选项
    • CMAKE_INSTALL_PREFIX可指定安装路径,默认为build目录下的install

    • BUILD为构建、WITH为启用

    • 取消勾选opencl、opengl、cuda、qt

    • 勾选

      • WITH_V4L(vedio for linux)、INSTALL_C_EXAMPLES

      • 图像格式支持 BUILD_JPEG、BUILD_OPENJPEG、BUILD_PNG、BUILD_TIFF、WITH_TIFF、BUILD_WEBP、WITH_WEBP

      • BUILD_ITT(ITT 用于记录和优化性能,特别是多线程任务的调试)、BUILD_ZLIB(压缩)

      • WITH_GTK、WITH_GTK_2_X(GTK(GIMP Toolkit)作为其 GUI 后端的设置。GTK 是一个跨平台的图形用户界面工具包,OpenCV 使用它来实现窗口显示功能(如 imshow);如果同时启用,CMake 会优先使用 GTK 3(WITH_GTK),而忽略 GTK 2(WITH_GTK_2_X))

    • 再次点击Configure,继续配置直到没有任何红色报错即可

    • 点击Generate生成Makefile,即可关闭cmake-gui

        Install to:                    /home/alexios/OpenCV/opencv-4.5.5/build/install
      -----------------------------------------------------------------Configuring done
      Generating done
      
  6. 编译和安装
    • 回到build目录中
    make -j8 #编译
    make install #安装
    
    • install目录下即为交叉编译好的opencv库
http://www.lryc.cn/news/488883.html

相关文章:

  • Stable Diffusion的解读(二)
  • amd显卡和nVidia显卡哪个好 amd和英伟达的区别介绍
  • 软件测试—— Selenium 常用函数(一)
  • 为什么verilog中递归函数需要定义为automatic?
  • 23种设计模式-状态(State)设计模式
  • EventListener与EventBus
  • Facebook为什么注册失败了?该怎么解决?
  • 前端数据可视化思路及实现案例
  • 【DVWA】Brute Force暴力破解实战
  • 23种设计模式速记法
  • 第7章硬件测试-7.3 功能测试
  • 动态规划子数组系列一>等差数列划分
  • 《Python浪漫的烟花表白特效》
  • 什么是RESTful API,有什么特点
  • 友思特新闻 | 友思特荣获广州科技创新创业大赛智能装备行业赛初创组优胜企业!
  • CSS中calc语法不生效
  • 国标GB28181视频平台EasyCVR视频融合平台H.265/H.264转码业务流程
  • ES6 模板字符串详解
  • 浏览器插件启动本地程序
  • Ubuntu ESP32开发环境搭建
  • 【gitlab】部署
  • vue中路由缓存
  • Github 2024-11-18 开源项目周报 Top15
  • GRCNN使用onnxruntime和tensorrt推理
  • java中的this关键字
  • Easyexcel(3-文件导出)
  • iOS应用网络安全之HTTPS
  • openharmony napi调试笔记
  • springboot基于微信小程序的农产品交易平台
  • Spring Boot 注解