linux qt5.9交叉编译,QT5.9移植

1.下载Qt源码

Qt源码下载地址:Index of /archive/qt 其他源码和其他安装包都是有的。

2.解压源码

$ mkdir  qt5.9

$cd qt5.9

将下载文件拷贝到当前目录下面。解压

$ xz -d qt-everywhere-opensource-src-5.9.7.tar.xz

$ tar -xvf qt-everywhere-opensource-src-5.9.7.tar

3.配置编译#!/bin/bash

./configure \

-prefix /usr/local/qt5 \

-extprefix $HOME/qt5/qt5.9 \

-hostprefix $HOME/qt5/qt5.9 \

-release \

-static \

-make libs \

-device linux-imx6-g++ \

-device-option CROSS_COMPILE=/home/yuan/re-fsl/fsl-releases-bsp/imx-fb/tmp/sysroots/x86_64-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi- \

-sysroot /home/yuan/re-fsl/fsl-releases-bsp/imx-fb/tmp/sysroots/imx6qsabresd \

-opengl es2 \

-qpa eglfs -v \

-commercial \

-nomake examples \

-nomake tests -v \

-nomake tools \

-qt-freetype \

-qt-libjpeg \

-qt-libpng \

-qt-pcre \

-no-iconv \

-no-glib \

-no-kms \

-no-tslib \

-no-zlib \

-no-mtdev \

-no-accessibility \

-no-feature-accessibility \

-no-directfb \

-no-openssl \

-no-linuxfb \

-no-openvg \

-skip qtpim \

-skip qtsvg \

-skip qttools \

-skip qtsensors \

-skip qtsystems \

-skip qtlocation \

-skip qtserialbus \

-skip qtserialport \

-skip qtimageformats \

-skip qtrepotools \

-skip qtxmlpatterns \

-skip qtwebengine -v

其中的参数说明

-prefix:目标板的引用路径。 这个路径有两个作用,一个是指定目标机的Qt库路径,也就是说,当你把Qt库部署到目标机时,需要把Qt库拷贝到这个路径下,Qt程序就可以自动找到库。第二个是,如果你没有指定extprefix, install的时候会把Qt库部署到sysroot+prefix这个路径下。

-extprefix:  介于默认会把Qt库部署到sysroot+prefix路径下,如果你不想这样,可以设置extprefix, 这样Qt库会部署到这个目录下而不是sysroot下。可以避免污染sysroot。我个人建议编译的时候设置-prefix 和-extprefix 就可以了。

-hostprefix: 如果你还有更奇葩的需求,比如qmake等工具不要和Qt库安装在一起,那么这个参数就很适合你。这个参数是指定编译工具的安装位置,不包括Qt库。指定这个变量之后,qmake等工具会安装在这个目录下,extprefix下面就不会有这些工具了。我目前没想到这么做有啥好处。所以不建议使用。

建议编译时制定两个路径,一个是目标板部署路径-prefix,一个是宿主机部署路径 -extprefix. 如果不怕污染sysroot的话,指定一个prefix就可以了。

CROSS_COMPILE:交叉编译器目录,版主我的是yocto里面的交叉编译目录,根据自己的目录修改

-static :静态编译

-sysroot:文件系统目录

3.编译

make

make install

在配置的安装目录应该可以看到已经以下目录bin

doc

include

lib

mkspecs

plugins

qml

在bin目录下可以找到qmake说明已经编译完成了

4.Qt Creator配置

1.配置编译器

de6b0bc7893c

de6b0bc7893c

2.配置qmake

de6b0bc7893c

de6b0bc7893c

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/564431.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux wps 公式编辑器,WPS 2012数学公式编辑器的使用方法(详细图解)

做数学或物理课件时很多公式是件比较头痛的事。时常陷入无穷的拼接法中,用一个一个文本框组合成复杂的公式。其实WPS 2012e为我们提供了一个功能强大的公式编辑器Equation Editor,可以帮助我们解决这些问题。1、插入公式将光标放置于欲插入公式的位置&am…

linux客户端 存活检测,Linux下客户端检测服务器的 heartbeat

客户端代码,和一般的客户端不一样#include#include#include#include#include#include#include#include#include#include#include #include #define MAXDATASIZE 100int main(){int sockfd,nbytes,serv_port;char buf_serv_ip[16],buf[260];struct sockaddr_in serv_…

python object单引号变成双引号_Python学习第163课--Linux命令行中的单引号和双引号...

【每天几分钟,从零入门python编程的世界!】我们都知道引号的作用就是为了引用,比如引用别人说的话,这句话就放在引号里面。而Linux命令行中的single quote(单引号)和dubble quote(双引号)有不同的作用。●双引号linux命令中双引号…

C语言条件循环语句执行步骤,C语言中for语句的执行过程是什么?

C语言中for语句的执行过程是:1、会先判断条件表达式是否成立,如果条件成立则执行中间循环体,执行完中间循环体后接着执行末尾循环体 ;2、在执行完末尾循环体后对条件表达式再次判断,若条件还成立,则继续重复…

c语言规范标准中英文,C语言中英文翻译资料.doc

C语言中英文翻译资料.docThe C Programming LanguageC is a high-level programming language developed by Dennis Ritchie and Brian Kernighan at Bell Labs in the mid-1970s. Although originally designed as a systems programming language, C has proved to be a powe…

SQL语言深入

数据库系统 数据库系统主要有以下 3 个组成部分: 1 . 数据库:用于存储数据的地方。 2 . 数据库管理系统:用于管理数据库的软件。 3 . 数据库应用程序:为了提高数据库系统的处理能力所使用的管理数据库库的软件补充。 数据库管…

加法的横式竖式教案c语言,20以内竖式加减法教案

【www.ahanw.cn--活动致辞】活动意图:数学的加减法运算很重要。特别是20以内的加减法是各种数字运算的基础。学好20以内的加减法,有利于活化孩子的头脑,发展孩子的思维。活动目标:1、感知进位加、退位减的算法,整理和归…

c语言平面向量加法考点,平面向量的加减法怎么死活都不会?有没有什么口诀?例如:向量AB+BC=?向量OA-OB=?向量AB-CB=?有没有什么口诀!...

设a(x,y),b(x,y).1、向量的加法向量的加法满足平行四边形法则和三角形法则.ABBCAC.ab(xx,yy).a00aa.向量加法的运算律:交换律:abba;结合律:(ab)ca(bc).2、向量的减法如果a、b是互为相反的向量,那么a-b,b-a,ab0.0的反向量为0AB-ACC…

neo4j browser执行脚本后不提示用时_还不懂什么是分层自动化测试的,有赞的实践经历告诉你...

来源:https://testerhome.com/articles/19109# 背景先理一下自动化测试的概念,从广义上来说,一切通过工具(程序)的方式来代替或者辅助手工测试的行为都可以成为自动化。从狭义上来说,通过编写脚本的方式,模拟手工测试…

android+自定义alertdialog,安卓自定义AlertDialog

AlertDialog.png使用方法 example:DialogUtil.showAlertDialog(getActivity(), R.mipmap.restart, "退出提示", "你确定要退出吗?"),"确定", "取消", true, new DialogUtil.AlertDialogBtnClickListener() {Overridepublic…

mysql datetime 后面带了很多0_面试官:MySQL 表设计要注意什么?

作者 孤独烟来自公众号:孤独烟引言大家应该知道烟哥最近要(tiao 咳咳咳),嗯,不可描述!随手讲其中一部分知识,都是一些烟哥自己平时工作的总结以及经验。大家看完,其实能避开很多坑。而且很多问题&#xff0…

android studio viewo,Android Studio 之 ViewModel

ViewModel 是 JetPack 类库中的一个功能,可以保存控件的状态 ,在整个Activity 生命周期中,状态不会失效如屏幕翻转时,状态可保留,不会失效!与 LiveData 配合使用!配合 Room 进行 Sqlite 操作数据…

极域电子书包课堂管理系统_朝阳群众说小康 | 从黑板课本到VR互动课堂、电子书包,朝阳的课堂如此有趣!...

教育变迁一支粉笔、一块黑板、一本教材曾经是教师上课沿袭了几十年的“三大法宝”随着时代发展当科技遇上了教育课堂上又会擦出什么样的火花呢?今天,小朝带你走进咱朝阳的校园一探究竟不一young的朝阳教育近日,教育部“基于教学改革、融合信息…

安装引导黑屏_给电脑安装系统老是装不上,重启就黑屏,原来是这项设置在作怪!...

很多人和我反映说:给电脑安装系统重启电脑后就黑屏无法正确解压系统,这个问题大家有没有遇到呢?遇到这个问题的人可能会认为自己电脑的硬盘坏了,明明已经把需要的Windows操作系统拷贝到硬盘已经成功了,重启电脑准备解压…

如果表不存在则创建_当创建一个文件的时候,操作系统发生了什么

操作文件是我们平时经常有的操作。但是我们可能并不是很了解他们原理,比如为什么删除一个很大的文件,会非常快?创建一个文件的时候,系统发生了什么?为什么删除的文件,还可以恢复?知其然知其所以…

两个html页面之间通讯,面试官:前端跨页面通信,你知道哪些方法?

引言在浏览器中,我们可以同时打开多个Tab页,每个Tab页可以粗略理解为一个“独立”的运行环境,即使是全局对象也不会在多个Tab间共享。然而有些时候,我们希望能在这些“独立”的Tab页面之间同步页面的数据、信息或状态。正如下面这…

默认选中_双击dwg图纸,怎么设置默认天正打开?

文尾左下角阅读原文看视频教程好课推荐:零基础CAD:点我CAD室内:点我 周站长CAD:点我CAD机械:点我 Bim教程:点我CAD建筑:点我CAD三维:点我全屋定制:点我 ps教程&#xff1…

临颖一高2021高考成绩查询,临颍一高举办2021年决战高考百日冲刺誓师大会

原标题:临颍一高举办2021年决战高考百日冲刺誓师大会3月4日,县一高举办2021年决战高考百日冲刺誓师大会,擂响了百日冲刺的战鼓,全校5800余名师生参加誓师大会。誓师大会在激昂雄壮的国歌声中拉开了序幕。县一高校长巩海生满怀深情…

2021年慈溪中学高考成绩查询,2021年慈溪市高考状元名单资料,今年慈溪市高考状元多少分...

高考状元一直都备受大家的关注,不管对于学校和还是当地教育系统,都是一件荣誉的事情。高考状元历来都诞生于艳羡的目光中,大家为他们的高分叫好,羡慕他们可以一步踏入国内知名学府。本文高考升学网为大家介绍历年慈溪市高考状元的…

网际风全推数据接口_智能风控系统设计与实践

导读在主流互联网产品中,比如搜索和推荐的系统,为了挖掘用户潜在购买需求,缩短用户到商品或信息的距离,提高用户的使用体验,都需要使用大量的特征来刻画用户的行为。在信息安全领域,建立在人工智能技术之上…