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

深圳效果图制作公司成都网络优化公司有哪些

深圳效果图制作公司,成都网络优化公司有哪些,明星个人网页制作教程,教师网络培训心得体会前言 目的:应用开发时最初是没有和buildroot中一起编译时,后面应用程序写的差不多时,同事问我怎么把应用程序打包到文件系统中,然后发布时跟随文件系统一起发布,并且增加打包启动脚本。所以本文在已经可以单独编译的基…

前言

目的:应用开发时最初是没有和buildroot中一起编译时,后面应用程序写的差不多时,同事问我怎么把应用程序打包到文件系统中,然后发布时跟随文件系统一起发布,并且增加打包启动脚本。所以本文在已经可以单独编译的基础上把项目放入buildroot一起编译。

应用程序单独可以编译(buildroot 有make sdk 单独打包编译环境)。

本文简化了项目部分内容,仅以demo 为项目代号,记录在buildroot中增加qt项目的过程。

环境:ubuntu20.04 、瑞芯微 RV1109 SDK 

实现方法

1. 在app 目录下创建一个qt工程

创建过程省略,当然后创建工程的路径也可以任务指定,不一定非得在SDK中的app目录下,只是app下面有很多其它的demo,这里也就放在app路径下了。这里假设app目录下创建工程文件名为demo/gui/demo.pro 工程

2.buildroot的操作

在SDK路径/buildroot/package 创建一个demo 文件夹,文件夹中分别创建二个文件,一个demo.mk 另一个为Config.in ; 内容分别为

demo.mk:

################################################################################
# 
# demo
#
################################################################################DEMO_VERSION = 1.0
DEMO_SITE = ${TOPDIR}/../app/demo
DEMO_SITE_METHOD = localDEMO_LICENSE = Apache V2.0
DEMO_LICENSE_FILES = NOTICEdefine DEMO_CONFIGURE_CMDScd $(@D)/gui/;$(TARGET_MAKE_ENV) $(HOST_DIR)/bin/qmake ;  
endefdefine DEMO_BUILD_CMDSsource $(@D)/gui/../work_sdk_path.sh; $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/gui/
endefdefine DEMO_INSTALL_TARGET_CMDS$(@D)/app_install.sh $(TARGET_DIR)
endef$(eval $(generic-package))

注意这里 多了个/gui/ ,因为写建工程时demo.pro 是放在工程目录gui下方的。

Config.in:

config BR2_PACKAGE_DEMObool "demo"helpthis is a app for QT Buildroot demo

在/buildroot/package 路径下增加“source "package/demo/Config.in"”

menu "Target packages"source "package/busybox/Config.in"source "package/rockchip/Config.in"source "package/skeleton/Config.in"source "package/skeleton-custom/Config.in"source "package/skeleton-init-common/Config.in"source "package/skeleton-init-none/Config.in"source "package/skeleton-init-systemd/Config.in"source "package/skeleton-init-sysv/Config.in"source "package/testApp/Config.in"source "package/demo/Config.in"

3.验证使用buildroot 编译是否正确

先设置编译buildroot的环境,执行source envsetup.sh rockchip_rv1126_rv1109_facial_gate。下面是查看当前sdk使用哪个环境编译的。

ubuntu:~/work/rv1109_rq/rv1126_1109_20220429$ ./build.sh -h rootfs
###Current SDK Default [ rootfs ] Build Command###
source envsetup.sh rockchip_rv1126_rv1109_facial_gate
make

然后再进入buildroot目录 执行 

(1)make demo-dirclean  删除掉工buildroot缓存的工程目录 ,因为在测试过程中,我们的文件一直是放在app下,有时增加或者修改(单独编译qmake)与buildroot下的不同,所以需要先clean 删除。

(2)make demo-rebuild   进行编译,看是否报错

如果不报错,就接近使用了。

4.buildroot  的menuconfig中设置

选择BR2_PACKAGE_DEMO 后面在buildrootk 整个make 就可以执行整个流程了

实际问题

从上面的流程中,只是一般性的描述了如何把一个工程放入buildroot下编译,并且编译成功,但并没有解决打包的问题,同时增加的buildrot,因为文件目录众多,关系有点绕。其他人只关心怎么把应用程序、配置、资源文件、启动脚本打包进文件系统。至于buildroot 如果去配置,他们不关心,也不想经常去改。且多人配合时,路径问题如何管理。

路径管理

多人开发时引用头文件或者库的路径问题,怎么才不至于不同开发人员间频繁的修改代码或者配置

下面方式通过设置WORK_SDK_PATH 来实现不同路径的切换

    INCLUDEPATH += $(WORK_SDK_PATH)/host/arm-buildroot-linux-gnueabihf/sysroot/usr/include/easymediaINCLUDEPATH += $(WORK_SDK_PATH)/rv1126_1109_20220429/external/rkfacialINCLUDEPATH += $(WORK_SDK_PATH)/rv1126_1109_20220429/external/rknpu/rknn/rknn_api/librknn_api/includeINCLUDEPATH += $(WORK_SDK_PATH)/host/arm-buildroot-linux-gnueabihf/sysroot/usr/include/drm

程序编译时环境配置

修改DEMO_BUILD_CMDS

source $(@D)/gui/../work_sdk_path.sh; $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/gui/

来设置“路径管理”中设置的变量,这个脚本在app/demo/work_sdk_path.sh 路径下。

打包时调用自定义脚本

修改DEMO_INSTALL_TARGET_CMDS 

$(@D)/app_install.sh $(TARGET_DIR)

这个脚本在app/demo/app_install.sh 路径下

注意$(@D) 表示的并不是app/demo的目录,表示的是buildroot/output/build/demo 下的路径

http://www.ds6.com.cn/news/12192.html

相关文章:

  • 那些空号检测网站是怎么做的私人做网站的流程
  • 易无忧建站国内it培训机构排名
  • 淘宝网客网站建设周口seo公司
  • 免费做网站排名seo初级入门教程
  • 知名网站制作公网站建设方案书模板
  • 用.net做的网站吗品牌运营管理有限公司
  • wordpress 自定义分类 模板重庆seo整站优化报价
  • 网站培训方案佳木斯seo
  • 网站 用cms 侵权海东地区谷歌seo网络优化
  • 动漫网站建设的目标百度指数里的资讯指数是什么
  • vi设计征集seo顾问服务 品达优化
  • 网站开发项目培训优化搜索点击次数的方法
  • 门户网站建设标准淘宝seo推广优化
  • 承包工程在哪个网站网站交易网
  • 网站服务器在香港潜江seo
  • 厦门网站制作阳哥抖音关键词挖掘工具
  • 平台网站怎么做的yahoo搜索引擎提交入口
  • 住房和城乡建设部网站住房补贴武汉新一轮疫情
  • 盐田做网站的公司山东企业网站建设
  • 网络管理网站策划书人民网 疫情
  • 网站制作什么做三只松鼠的软文范例
  • 郑州市建网站百度网站优化排名
  • 怎样做中考成绩查询网站疫情最新消息今天
  • 外贸营销型网站培训方案及培训计划
  • 军事视频2020最新seo网上培训多少钱
  • 在线制作网站表白哪些网站可以发广告
  • 聊城做企业网站的头条新闻今日头条官方版本
  • 苏州专业高端网站建设公司哪家好网站点击软件排名
  • 贵阳市做网站的公司有哪些代运营网店公司
  • 邢台168交友最新信息百度seo教程