arm开发板运行qt程序

在arm开发板上运行qt程序,在v853上运行。提前通过交叉编译得到了qt库文件,在window上写了qt测试代码!

编译参考:在全志V853开发板试编译QT测试_v853 qt-优快云博客

交叉编译得到的qt库文件; 

1.1  在Linux下交叉编译得到qt程序

创建Makefile文件

TARGET=controlmenu_v853

QT_ENV=qt_compile_env.config

BUILD_DIR=build

SOURCE_DIR=controlmenu_v853

all: $(BUILD_DIR)
	@echo "" 
	@echo "Building for target: arm-linux"
	@echo "Current directory: $(PWD)"
	@echo "SOURCE_DIR: $(SOURCE_DIR)"
	@echo "TARGET: $(TARGET)"
	@echo ""
	@cd $(BUILD_DIR) && \
	source ../$(QT_ENV) && \
	qmake ../$(SOURCE_DIR)/$(TARGET).pro && \
    make && \
	echo ""  && \
	echo "Build completed successfully for target: arm-linux" 
 

$(BUILD_DIR):
	mkdir -p $@

clean:
	@if [ -d $(BUILD_DIR) ]; then \
		cd $(BUILD_DIR) && make clean; \
	fi

distclean:
	rm -rf $(BUILD_DIR)

.PHONY: all clean distclean

1.2  创建编译环境配置文件  qt_compile_env.config

export QTDIR=/opt/qt_5.12.9_v853  
export PATH=$QTDIR/bin:$PATH                                     
export CROSS_COMPILE=arm-openwrt-linux-                        
export CC=${CROSS_COMPILE}gcc                                   
export CXX=${CROSS_COMPILE}g++                                  
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH               
export QMAKESPEC=$QTDIR/mkspecs/linux-arm-gnueabi-g++   

  QTDIR  --> 为交叉编译出来的qt库文件的路径,需要根据实际的修改;

CROSS_COMPILE --> 交叉编译工具的前缀

CC,CXX  -->  C、C++交叉编译工具;
LD_LIBRARY_PATH   --> qt库的lib路径

QMAKESPEC  --> 目标平台;  根据实际修改

1.3  交叉编译qt程序

在linux下创建目录,将qt程序、Makefile、qt_compile_env.config放到目录下

然后在目录下执行make,就可以得到执行qt执行文件;qt可执行文件在build目录下

1.4 创建qt启动脚本   qt_run.sh

#!/bin/sh


mkdir -p /tmp/runtime-root
chmod 0700 /tmp/runtime-root

export QT_PLUGIN_PATH=/mnt/UDISK/qt_arm_5.12.9/plugins
export LD_LIBRARY_PATH=/mnt/UDISK/qt_arm_5.12.9/lib
export QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0:size=800x480:mmSize=800x480:offset=0x0:tty=/dev/tty1


#export QT_QPA_FONTDIR=/mnt/UDISK/qt_arm_5.12.9/fonts

#export QT_QPA_GENERIC_PLUGINS="tslib,evdevmouse:/dev/input/event1,evdevkeyboard:/dev/input/event2"

export QT_QPA_FONTDIR=/mnt/UDISK/qt_arm_5.12.9/fonts
export QT_QWS_FONTDIR=/mnt/UDISK/qt_arm_5.12.9/fonts
export QT_QPA_EVDEV_KEYBOARD_PARAMETERS=/dev/input/event0

export XDG_RUNTIME_DIR=/tmp/runtime-root

./controlmenu_v853

QT_PLUGIN_PATH、LD_LIBRARY_PATH    --> qt库的文件路径(将交叉编译qt库的plugins、lib放到arm板上);根据实现的路径修改

./controlmenu_v853    --> 启动qt可执行文件

QT_QPA_FONTDIR  -->  字体库路径;根据实际修改;

1.5  arm板上运行验证

将qt库的lib、plugins放到arm板上,路径与 QT_PLUGIN_PATH、LD_LIBRARY_PATH 对应上;

目前字体放在一起;

将qt执行文件,qt_run.sh文件传到arm板上;如下:一般放在 /usr下在建一个目录,现在只是测试

然后qt执行文件改权限, chmod  +x   controlmenu_v853   或者  chmod  0777 controlmenu_v853

在该目录下执行启动脚本:  ./qt_run.sh

 chmod +x controlmenu_v853

 ./qt_run.sh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值