有屏RV1126部署QT应用

之前写过一篇在RV1126上移植QT的文章,当时只是重点记录了项目移植的方法及交叉编译的配置等。RV1126只有buildroot系统,因此想要编译有界面的app需要借助QT和framebuffer实现。

下面记录一下如何通过buildroot的方式构建有界面的qt程序

首先在buildroot中添加QT5的内容

source envsetup.sh  //选择rockchip_rv1126_rv1109
make menuconfig

Target packages->Graphic libraries and applications (graphic/text)

开启 Qt5 下的 gui module 和 widgets module

保存退出

make savedefconfig
./build.sh rootfs

随后在 SDK/buildroot/package/rockchip/ 目录下,新建工程文件夹(QT Creator创建的项目名称,我的项目名称是qhyccd,下文提到的项目名称都是指这个),在文件夹中添加两个文件, Config.in 和 项目文件名.mk 。

Config.in

config BR2_PACKAGE_QHYCCD
    bool "qhyccd"
    help
    hya qt demo

qhyccd.mk

################################################################################
#
# qhyccd
#
################################################################################

QHYCCD_VERSION = 1.0
QHYCCD_SITE = $(TOPDIR)/../app/qhyccd
QHYCCD_SITE_METHOD = local

TEST_LICENSE = Apache V2.0
TEST_LICENSE_FILES = NOTICE
define TEST_CONFIGURE_CMDS
cd $(@D); $(TARGET_MAKE_ENV) ~/workspace/rv1126SDK0/buildroot/output/rockchip_rv1126_rv1109/host/bin/qmake
endef
define QHYCCD_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) 
endef

define QHYCCD_INSTALL_TARGET_CMDS
$(INSTALL) -D -m 0755 $(@D)/qhyccd $(TARGET_DIR)/usr/bin/qhyccd
endef
$(eval $(generic-package))

2)移植源码

在SDK/app/目录下建立项目文件夹qhyccd

在qt里简单的构建了一个工程,随后将.pro .cpp .h .ui 文件移动到虚拟机SDK/app/项目文件夹下

给工程文件夹权限

3)编译工程

在SDK根目录下,make 项目名-build

编译完成后,在对应的output的target/usr/bin下面可以找到可执行文件

假如对源码进行了修改,可以使用make 项目名-rebuild进行重新编译

make qhyccd-rebuild
./build.sh rootfs
./build.sh updateimg

把镜像烧录到开发板

4)测试可执行程序

运行可执行程序报错如下,是因为开发板没有配置QT的环境

Could not find the Qt platform plugin "eglfs" in ""

vi /etc/profile

#QT 配置
export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/qt/plugins
export QT_QPA_PLATFORM=linuxfb:tty=/dev/fb0
export QT_QPA_FONTDIR=/usr/lib/fonts

之后报错如下,是因为没有/dev/fb0设备

重新配置内核,打开framebuffer驱动

在kernel目录下

make ARCH=arm rv1126_defconfig
make ARCH=arm menuconfig

//配置如下
Devices Drivers > 
    Graphics support > 
        Frame buffer Devices >
         Support for frame buffer devices >
             [*] Enable Video Mode Handling Helpers
             ********
             <*> ARM PrimeCell PL110 support
             
Devices Drivers > 
    Graphics support > 
        Direct Rendering Manager >
            [*] Enable legacy fbdev support for your modesetting driver

退出保存
make ARCH=arm savedefconfig // 将.config 保存为 deconfig
cp defconfig arch/arm/configs/rv1126_defconfig
cd ..
./build.sh kernel

报错信息如下,找不到字体库

Cannot find font directory /usr/lib/fonts

在Windows下此路径,把其中的字体库文件拷贝到开发板target/usr/lib/fonts文件夹下

在SDK根目录下

./build.sh rootfs
./build.sh updateimg

随后烧录测试,运行可执行程序,屏幕成功显示界面

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
根据引用内容,部署Yolov7在RV1126上需要进行以下步骤: 1. 配置编译器:根据中提供的信息,需要下载适用于RV1126的交叉编译器。您可以从提供的下载地址获取适合的版本。将交叉编译器解压到固定路径,并确保在Ubuntu上编译工程,以便在RV1126板子上运行程序。 2. 编译Yolov7:进入Yolov7的构建目录,运行cmake命令进行配置,指定适用于RV1126的交叉编译器。例如,可以使用以下命令: ``` cmake .. -DCMAKE_C_COMPILER=${RV1109_TOOL_CHAIN}/bin/arm-linux-gnueabihf-gcc -DCMAKE_CXX_COMPILER=${RV1109_TOOL_CHAIN}/bin/arm-linux-gnueabihf-g++ ``` 然后运行make命令进行编译。 3. 安装Yolov7:编译完成后,运行make install命令将编译好的文件安装到指定位置。 4. 部署Yolov7:根据需要,将Yolov7的运行脚本复制到适当的位置,以便在RV1126上运行。具体路径和命令请参考中提供的示例。 请注意,部署Yolov7可能还需要其他依赖项和配置,这些步骤仅提供了基本的指导。建议查阅相关文档或咨询开发人员以获取更详细的指导和支持。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Rockchip RV1126 模型部署(完整部署流程)](https://blog.csdn.net/kxh123456/article/details/129370265)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [训练自己的yolov5样本, 并部署rv1126 三>](https://blog.csdn.net/zunly/article/details/127971370)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值