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

搭建Qt5.7.1+kylinV10开发环境、运行环境

1.下载Qt源码

Index of /

2.编译Qt

解压缩qt-everywhere-opensource-src-5.7.1.tar.gz

进入到qt-everywhere-opensource-src-5.7.1/qtbase/mkspecs这个目录下,

2.1找到以下目录

复制他,然后改名linux-x86-arrch64,博主这里名字取的有些问题,建议自定义名称。

 

进入到目录下,更改qmake.conf内容

指定编译工具链的路径

#
# qmake configuration for building with arm-linux-gnueabi-g++
#MAKEFILE_GENERATOR      = UNIX
CONFIG                 += incremental
QMAKE_INCREMENTAL_STYLE = sublibinclude(../common/linux.conf)
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)# modifications to g++.conf
QMAKE_CC                = /home/fmsh/work/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
QMAKE_CXX               = /home/fmsh/work/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++
QMAKE_LINK              = /home/fmsh/work/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++
QMAKE_LINK_SHLIB        = /home/fmsh/work/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++# modifications to linux.conf
QMAKE_AR                = /home/fmsh/work/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-ar cqs
QMAKE_OBJCOPY           = /home/fmsh/work/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-objcopy
QMAKE_NM                = /home/fmsh/work/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-nm -P
QMAKE_STRIP             = /home/fmsh/work/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-strip
load(qt_config)

2.2返回qt-everywhere-opensource-src-5.7.1/目录下,创建shell脚本,生成makefile。

创建qt.sh脚本,编译内容如下:

-prefix /home/fmsh/work/Qt-5.7.1-x86_64_aarch64/ 指定make install后的路径。

-xplatform linux-x86-arrch64  指定2.1步骤中创建的文件夹名称。


#!/bin/sh./configure \-prefix /home/fmsh/work/Qt-5.7.1-x86_64_aarch64/ \-release \-opensource \-make libs \-xplatform linux-x86-arrch64 \-optimized-qmake \-pch \-linuxfb \-qt-libjpeg \-qt-zlib \-no-glib \-no-opengl \-no-sse2 \-no-cups \-no-iconv \-no-accessibility \-skip qt3d \-skip qtcanvas3d \-skip qtpurchasing \-skip qtactiveqt \-skip qtandroidextras \-skip qtcharts \-skip qtconnectivity \-skip qtdatavis3d \-skip qtdeclarative \-skip qtgamepad \-skip qtvirtualkeyboard \-nomake examples \-nomake tools \-nomake testsexit

2.3保存,执行sh qt.sh命令,生成makefile文件

执行make -j8,开始编译,还是比较顺利,中途没有报错。

sudo make install 安装编译好的库。

3.配置交叉编译环境

第2步中,已经编译好Qt的库了,需要在QtCreator中进行配置

3.1选择标签 编译器,按下图设置,选择 C 交叉编译器,如下图所示:添加编译器的路径。

3.2切换到 Qt Versions 标签,点击“添加”按钮,选择 qmake,如下图所示:

3.3切换到 Kits 标签,点击“添加”按钮,然后设置如下图所示:

Qt 环境构建成功后,通常会在上图所示显示一黄色的小的 三角符+感叹号 。 

4.准备板端Qt运行环境

使用tar压缩Qt编译好的库,防止复制粘贴断链。

打包成tar包

将编译好的可执行程序和需要的插件打包放在一个路径下,如下图所示。

将上面的目录拷贝到板端

我将目录拷贝到板端的 /data 目录下。

编辑start.sh脚本,配置Qt运行环境,内容如下。

#!/bin/bash
FILE=/data/lib
if [ -d "$FILE" ]; thenecho "$FILE is exist"
elseecho "$FILE does not exist start compress..."tar -zxvf /data/lib.tar.gz
fiexport QT_ROOT=/data
export QT_QPA_PLATFORM_PLUGIN_PATH=$QT_ROOT/plugins
export QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0
export QT_PLUGIN_PATH=$QT_ROOT/plugins
export QT_LIBRARY_PATH=$QT_ROOT/lib:$QT_ROOT/plugins/platformsexport LD_LIBRARY_PATH=$QT_LIBRARY_PATHchmod u+x /data/RemoteControl
/data/RemoteControl

运行程序:

sh start.sh

http://www.lryc.cn/news/215473.html

相关文章:

  • Ceph:关于Ceph 中创建和管理自定义 CRUSH Map
  • 【Linux】开发工具——vim多模式编辑器的入土设置sudoers白名单
  • Linux基础环境开发工具的使用(yum,vim,gcc,g++)
  • 加速软件开发和交付的革命性方法-DevOps
  • Ha-NeRF源码解读 train_mask_grid_sample
  • 大数据毕业设计选题推荐-系统运行情况监控系统-Hadoop-Spark-Hive
  • SpringBoot----自定义Start(自定义依赖)
  • 通过条件竞争实现内核提权
  • vue实现换肤功能
  • 嵌入式软件工程师面试题——2025校招社招通用(八)
  • 背包笔记
  • 【Redis 速通】Redis 在 Linux 上的单机服务快速搭建与部署(附完整流程步骤及命令代码)
  • 前端JavaScript
  • C语言程序设计(第五版)谭浩强 第三章课后题答案
  • uni-app 解决钉钉小程序日期组件uni-datetime-picker不兼容ios问题
  • 【C++入门 三】学习C++缺省参数 | 函数重载 | 引用
  • 视频增强修复软件Topaz Video AI mac中文版支持功能
  • C# 使用Thread类建线程
  • asyncio协程框架
  • TSINGSEE智慧安防:AI人员入侵检测算法的工作原理及应用场景概述
  • Python:PDF转长图像和分页图像
  • 第48天:内置对象方法、 前端基础之BOM和DOM
  • CMake系列EP02: 构建可执行程序和库
  • 比亚迪今年的薪资。。
  • 【OpenCV实现图像找到轮廓的不同特征,就像面积,周长,质心,边界框等等。】
  • 数仓建模—数仓建设概论
  • Docker dnmp 多版本php安装 php8.2
  • Distilling the Knowledge in a Neural Network【论文解析】
  • 基于深度学习的自动驾驶汽车语义分割与场景标注算法研究。
  • 国内可用超丝滑ChatGPT4.0(附网址及微信入口)