PUPANVR-软硬件板端开发环境配置(4)

news/2024/10/17 15:21:46/

        直接在硬件上跑编译程序时报C,C++库的版本不对的警告信息,看来是编译器的版本和当前板端系统上的不一致导致的,需要更新一下rootfs,使用编译器对应的BSP包:Hi3536C V100R001C02SPC040,编译一下rootfs,为了方便开发,使用jffs2的文件系统.

  • 分区配置:
mem=300M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 rw mtdparts=hi_sfc:1M(boot),4M(kernel),11M(rootfs);
  • BSP编译

 解压BSP包后,在Hi3536C V100R001C02SPC040\01.software\board 找到Hi3536CV100_SDK_V2.0.4.0.tgz,解压出来,在目录下再执行:sdk.unpack。

参照osdrv\opensource\kernel的说明,把kernel下载下来解压,修改补丁打上,返回到osdrv目录下,安照readme_cn.txt说明编译。

在我的ubuntu20提示mkimage找不到,这个用apt-get装上相应的工具就好了。

在编译到文件系统的mtd-utils1.5.0时会编译不过,记录几年前的处理方式我是更新到1.5.2的版本就好了。

错识主要是说找不到major,minor这几个函数,这次针对错误修改了一下,在对应的文件里加了 #include <sys/sysmacros.h>声明,还有提示zlib的头文件找不到,修改了一下对应的Makefile,因为只需要用到mkfs.jffs2,保证把这个工具编译出来后就没有往改了,编出mkfs.jffs2后,拷到osdrv/pub/bin/pc/mkfs.jffs2。

  • 参照SDK里的方式,打包一下rootfs:

osdrv/pub/bin/pc/mkfs.jffs2 -d osdrv/pub/rootfs_glibc -l -e 0x10000 -o osdrv/pub/rootfs_glibc_64k.jffs2

  • 在ubuntu中装好tftpd-hpa的服务;
  • 进入板端的uboot命令中,配置好相关的IP地址;
  • 通过tftp,sf工具下发烧写好rootfs,如我的环境:
tftp 0x8200000 rootfs_glibc_64k.jffs2;sf probe 0;sf erase 0x500000 0xb00000; sf write 0x82000000 0x500000 0xb00000;

        在进入系统设置好IP, mount到uboot的NFS目录,运行程序没有报错误了。

       

  • MPP环境配置;

把Hi3536CV100_SDK_V2.0.4.0\mpp\ko目录放到挂载目录,在板端执行,但报Unknown symbol devm_pinctrl_put这些模块错误,看来kernel最好也是要更新一下了。

先把板端的kernel备份出来,再更新kernel.

直接用BSP的里编译的Kernel能正常跑起来,网络也正常,看来比较幸运,厂家与官方的DEMO变化不大,再执行下面的脚本。

 ./load3536c -i -total 512 -osmem 300

MPP的相应ko都加载上了。

有了这些环境后,基本就可以进行在这个板上的全业务功能开发了,把SDK里的mpp的驱动、库拷到ubuntu的挂载目录下,通过命令加载上即可!

/nfsroot/hi3536c/mpp/ko # lsmod
Module                  Size  Used by    Tainted: P  
hi3536c_adec            6099  0 
hi3536c_aenc           85360  0 
hi3536c_ao            355555  0 
hi3536c_ai            206470  1 hi3536c_aenc
hi3536c_aio            25556  0 
hi3536c_ive           183354  0 
hi3536c_vda           566389  0 
hi3536c_jpege          46427  0 
hi3536c_h265e         157524  0 
hi3536c_h264e         139170  0 
hi3536c_vedu           11723  0 
hi3536c_chnl           36078  0 
hi3536c_venc          227024  3 hi3536c_jpege,hi3536c_h265e,hi3536c_h264e
hi3536c_rc            180446  0 
hi3536c_hdmi          295031  0 
hifb                   79096  0 
hi3536c_vou           436942  0 
hi3536c_vpss          365830  0 
hi3536c_vgs           170236  0 
hi3536c_region         76502  0 
hi3536c_tde            99004  0 
hi3536c_jpegd           4373  0 
hi3536c_vfmw         1283461  0 
hi3536c_vdec          233615  0 
hi3536c_sys            65523  3 hi3536c_aenc,hi3536c_aio,hi3536c_venc
hi3536c_base           47502 24 hi3536c_adec,hi3536c_aenc,hi3536c_ao,hi3536c_ai,hi3536c_aio,hi3536c_ive,hi3536c_vda,hi3536c_jpege,hi3536c_h265e,hi3536c_h264e,hi3536c_vedu,hi3536c_chnl,hi3536c_venc,hi3536c_rc,hi3536c_hdmi,hifb,hi3536c_vou,hi3536c_vpss,hi3536c_vgs,hi3536c_region,hi3536c_tde,hi3536c_vfmw,hi3536c_vdec,hi3536c_sys
hi_osal                58462 26 hi3536c_adec,hi3536c_aenc,hi3536c_ao,hi3536c_ai,hi3536c_aio,hi3536c_ive,hi3536c_vda,hi3536c_jpege,hi3536c_h265e,hi3536c_h264e,hi3536c_vedu,hi3536c_chnl,hi3536c_venc,hi3536c_rc,hi3536c_hdmi,hifb,hi3536c_vou,hi3536c_vpss,hi3536c_vgs,hi3536c_region,hi3536c_tde,hi3536c_jpegd,hi3536c_vfmw,hi3536c_vdec,hi3536c_sys,hi3536c_base
sys_config              2845  0 

检查这些ko都加载上了!

PUPANVR

PUPANVR: PUPANVR是一款开源的嵌入式NVR系统,旨在创建一款多平台,易用,稳定的NVR系统。


http://www.ppmy.cn/news/629678.html

相关文章

软硬件协同设计的系统级开发环境~BPS软件介绍

软硬件协同设计的系统级开发环境~BPS软件介绍 0 赞 发表于 2010/7/19 14:38:11 阅读&#xff08;32881&#xff09; 评论&#xff08;0&#xff09; 1&#xff09;BPS简介&#xff1a; BEEcube Platform Studio&#xff08;BPS&#xff09;工具是一个软硬件协同设计的系统级开…

阐述软硬件结合

硬件和软件的融合已经到了一个转折点——两者不再相互独立,而是越来越多地呈现出一种镜像依赖关系。硬件和软件系统的合作比以往任何时候都要更加密切,它们之间的界限也日趋模糊,两者的功能彼此关联。作为开发人员,重要的是要引领趋势,确保我们掌握的技能不落后于最新技术…

机器人控制系统软硬件平台

工业机器人软硬件平台架构 工业机器人软硬件平台架构的概述 工业机器人的发展历程&#xff1a; 1950s-1960s&#xff1a;工业机器人诞生&#xff0c;开始应用于生产线自动化。1970s-1980s&#xff1a;工业机器人技术快速发展&#xff0c;引入新的控制方法和结构设计。1990s-…

嵌入式系统开发环境概述

嵌入式系统开发环境主要包括&#xff1a; 集成开发工具交叉编译器批处理文件makefileLink Script调试工具下载工具其它工具(Offline Tools)模拟器版本控制工具 接下来分别讲解以上各个工具&#xff1a; 1、集成开发工具 一般CPU厂商会提供针对该CPU的集成开发环境(IDE)&…

软件开发过程中的环境简介

软件开发生命周期的六个阶段&#xff08;问题的定义及规划、需求分析、软件设计、程序编码、软件测试和运行维护&#xff09;中需要用到不同的环境。我们对其环境分类为 Development, Testing, Staging, and Production environments&#xff0c;如下图&#xff1a; 开发环境&a…

android编译环境-软硬件要求

要求 下载和编译 Android 源代码之前&#xff0c;请先确保您的系统符合以下要求。然后&#xff0c;请参阅构建编译环境&#xff0c;查看适用于相应操作系统的安装说明。 硬件要求 您的开发编译机必须达到或超出以下硬件要求&#xff1a; 如果是 Gingerbread (2.3.x) 及更高版…

嵌入式软件开发环境

嵌入式软件开发环境 1 简介嵌入式软件定义嵌入式系统构成 2 环境搭建2.1 Qt2.2 CLion2.3 Source Insight vs code2.4 Vim 3参考 1 简介 嵌入式软件定义 嵌入式软件与嵌入式系统是密不可分的&#xff0c;嵌入式系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用…

Hperledger Fabric入门课程3 ——软硬件环境

购买专栏前请认真阅读:《Fabric项目学习笔记》专栏介绍 1. 硬件环境 不论是在当前系统上运行、云服务器还是虚拟机,建议内存4G或以上,硬盘空间建议50G以上。 2. 操作系统 Fabric 的操作一般在Linux 或 MacOS上,Mac暂时不支持Apple Silicon芯片即m1以后的芯片。 如果读者…