在3559上如果需要根据自己的需求进行开发的话,sample里面的例程是远远不够的,本文主要是自己在单独编译IVE模块时的一些经验总结,希望能对大家有所帮助。
主要包含需要的源代码如下图所示,如果需要使用c++编译的话,需要自己建立xx.cpp的文件。

需要的第三方库,opencv和Hisi。Hisi的.so和.a文件从out文件夹中获取

Opencv的库我用的是3.4.1,编译参考https://blog.csdn.net/Somnr_m/article/details/114655589

有了这些文件,就需要使用cmake进行编译,即可生成可执行文件。
cmake文件如下所示:

CMAKE_MINIMUM_REQUIRED(VERSION 3.18)project(3559Project)
SET(CMAKE_CXX_STANDARD 11)
# 设置编译器选项:O3优化,显示所有警告
SET(CMAKE_C_FLAGS "$ENV{CFLAGS} -O3 -Wall -g -lstdc++  -mcpu=cortex-a53")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2  -std=c++11 -Wall -g -lstdc++ ")SET(CROSS_TOOLCHAIN_PREFIX "/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin")
SET(CMAKE_C_COMPILER ${CROSS_TOOLCHAIN_PREFIX}/aarch64-himix100-linux-gcc)
SET(CMAKE_CXX_COMPILER ${CROSS_TOOLCHAIN_PREFIX}/aarch64-himix100-linux-g++)MESSAGE(STATUS "CMAKE_C_COMPILER:" ${CMAKE_C_COMPILER})
MESSAGE(STATUS "CMAKE_CXX_COMPILER:" ${CMAKE_CXX_COMPILER})# 设置Cmake查找主路径
SET(CMAKE_FIND_ROOT_PATH /opt/hisi-linux/x86-arm/aarch64-himix100-linux)# hisi
SET(HI_INCLUDE ${PROJECT_SOURCE_DIR}/thirdParty/Hisi/include)
SET(HI_LIB ${PROJECT_SOURCE_DIR}/thirdParty/Hisi/lib)
SET(HI_SVP_COMMON_INCLUDE ${PROJECT_SOURCE_DIR}/src/include)
INCLUDE_DIRECTORIES(${HI_INCLUDE})
INCLUDE_DIRECTORIES(${HI_SVP_COMMON_INCLUDE})
LINK_DIRECTORIES(${HI_LIB})#opencv
SET(OPENCV_INCLUDE ${PROJECT_SOURCE_DIR}/thirdParty/opencv3.4.1/include)
SET(OPENCV_LIB ${PROJECT_SOURCE_DIR}/thirdParty/opencv3.4.1/lib)MESSAGE(STATUS "OPENCV_INCLUDE:" ${OPENCV_INCLUDE})
MESSAGE(STATUS "OPENCV_LIB:" ${OPENCV_LIB})#SET(OPENCV_INCLUDE /home/zynq/build_hi3559a/install/include)
#SET(OPENCV_LIB /home/zynq/build_hi3559a/install/lib)
INCLUDE_DIRECTORIES(${OPENCV_INCLUDE})
LINK_DIRECTORIES(${OPENCV_LIB})FILE(GLOB OPENCV_LIBS "${OPENCV_LIB}/*")
FILE(GLOB HI_LIBS "${HI_LIB}/*")MESSAGE(STATUS "OPENCV_LIBS:" ${OPENCV_LIBS})#添加源文件路径
AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/src/. SRC)
AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/src/common/. SRC)add_definitions(-DSENSOR0_TYPE=SONY_IMX334_MIPI_8M_30FPS_12BIT)
add_definitions(-DSENSOR1_TYPE=SONY_IMX334_MIPI_8M_30FPS_12BIT)
add_definitions(-DSENSOR2_TYPE=SONY_IMX334_MIPI_8M_30FPS_12BIT)
add_definitions(-DSENSOR3_TYPE=SONY_IMX334_MIPI_8M_30FPS_12BIT)
add_definitions(-DSENSOR4_TYPE=SONY_IMX277_SLVS_8M_30FPS_12BIT)
add_definitions(-DSENSOR5_TYPE=SONY_IMX277_SLVS_8M_30FPS_12BIT)
add_definitions(-DSENSOR6_TYPE=SONY_IMX277_SLVS_8M_30FPS_12BIT)
add_definitions(-DSENSOR7_TYPE=SONY_IMX277_SLVS_8M_30FPS_12BIT)ADD_EXECUTABLE(sample_ive_main ${SRC})
TARGET_LINK_LIBRARIES(sample_ive_main ${HI_LIBS} -lpthread -lrt -ldl -lm)
TARGET_LINK_LIBRARIES(sample_ive_main ${OPENCV_LIBS} -lpthread -lrt -ldl -lm)

海思3559单独编译ive模块相关推荐

  1. 海思3559编译live555

    1.找到live555最新的安装包http://www.live555.com/liveMedia/public/ 下载live555-latest.tar.gz 2.安装live555,必须先安装o ...

  2. 1.海思项目整理 编译烧录+启动参数+sample编译+bayeRGBYUV+MPP(VB+VI+VPSS)

    1.1.2.检测开发板 (4)SecureCRT监视打开,开发板开机,自动挂载到/home/aston/rootfs中 (5)自动加入/mnt中,执行./sample_venc即可 (6)在vlc中输 ...

  3. 海思3559万能平台搭建:DDR移植的一些问题

    前言:   开发板是绝对无误的硬件环境,但是我们平时的开发肯定会接触自己搭建的硬件环境,难免会有这样那样的小问题,这里给出一次DDR的调试过程 问题描述   海思3559开发板可以用默认配置表格生成的 ...

  4. 海思3559 人脸识别

    https://github.com/hanson-young/nniefacelib nniefacelib是一个在海思35xx系列芯片上运行的人脸算法库,目前集成了mobilefacenet和re ...

  5. 海思3559万能平台搭建:串口编程

    前言   平常的工作使用中,总是免不了要和串口打交道,协议的收发也经常通过串口来实现,海思3559下的串口和标准的linux下串口大同小异,可以参考之前zynq的串口编程,也可以直接阅读本文 使能串口 ...

  6. 海思3559移植yolov3

    此人博客上有完整教程: https://blog.csdn.net/avideointerfaces/article/category/8762084 海思3559移植yolov3 海思AI芯片(Hi ...

  7. 海思3559与全志a83t比较

    全志 a838t 8核 cpu0主频 1800000m,cpu7 480000m 满负荷运行 1608000m 海思开发板运行 第一次 opencv 运行图像处理 全志开发板需要35ms  海思355 ...

  8. 海思3559A上编译ffmpeg

    参考文章:<海思3559A上编译FFmpeg源码操作步骤> 其中遇到的几个问题: 1. 将提示的.o文件全部删除,再重新编译即可. 2. 参考文章:<ffmpeg 交叉编译 make ...

  9. 海思3559:百兆网口的配置

    前言   海思3559的开发板网口是默认支持千兆/百兆的,这里的自适应,是从RJ45出来后和PC侧的自适应,而实际上3559对于网口的设置,默认都是RGMII模式,除了对应的软件配置,硬件部分需要通过 ...

最新文章

  1. CI框架常用函数(AR数据库操作的常用函数)
  2. java beans 组件_如何利用JavaBeans在应用程序中创建组件?
  3. js 中声明变量 “提前”
  4. kali linux 截图位置,Kali Linux中使用shutter截图工具 | CN-SEC 中文网
  5. python如何循环使用input_python基础知识input到while循环
  6. 辗转相除法应用之倒C语言实现
  7. 给定N个加号,M个减号以及N+M+1个整数,A1+A2+...+Am+An+1,小明想知道在所有由这n个加号,M个减号以及N+M+1个整数凑出的合法的后缀表达式中,结果最大的是哪一个?
  8. Linux下selinux简单梳理
  9. java concurrent 线程通信_java并发之线程间通信
  10. cad小插件文字刷_CAD实用小插件,这是一串让你效率提升相见恨晚的代码!
  11. VBScript 基础知识
  12. 笑来就是个鸡汤写手啊!
  13. C指针原理(32)--C语言-pvm并行计算
  14. Redis 列表(List)方法使用详解
  15. 如何在Ubuntu上方便使用OpenAI API key
  16. SPSS大学生毕业生就业问题分析
  17. Img2Lcd 使用
  18. (五)Vue之data与el的两种写法
  19. 【C++】String用法总结
  20. 华为WLAN基础全套学习笔记整理

热门文章

  1. 副业思维实战第二波-那些年的游戏
  2. MySQL查询语句执行的过程
  3. c++ 海康工业相机回调方式抓图片
  4. 「转」专访犀思云创始人张雄国:NaaS服务的核心是成就客户
  5. 鸢尾花完整的python代码knn_knn实现鸢尾花分类
  6. 索尼a7c语言没有英语,索尼 A7r2 slog3_买了索尼a7后悔
  7. 2019 ICCV 目标检测 论文简述整理
  8. 重新认识键盘与鼠标——键盘事件与鼠标事件
  9. 【H5】网页中的图片
  10. 人脸检测(十一)--JDA算法