qt学习:qt项目移植多平台

目录

window

linux

安装qt步骤

在linux编译可执行程序步骤

arm

要先移植交叉编译链才能在ubuntu里生成arm的qt可执行文件,下面是步骤

安装arm的qmake

在linux编译可执行程序步骤


进入官网下载qt,下载window,linux的安装包,安装window,在ubuntu安装linux的

Download Qt OSS: Get Qt Online Installericon-default.png?t=N7T8https://www.qt.io/download-qt-installer-oss?hsCtaTracking=99d9dd4f-5681-48d2-b096-470725510d34%7C074ddad0-fdef-4e53-8aa8-5e8a876d6ab4

window

 在window平台生成项目的可执行程序是先通过qmake工具生成makefile文件,再通过make生成可执行程序,qmake在安装qt的时候就会一起安装好

linux

安装qt步骤

  • 方式一
    • 将安装包放到ubuntu上,然后sudo运行安装包
    • 会默认安装在opt里,
    • 添加环境
    • 用qt打开项目,下面是打开方式
      • 进入到项目,然后qtcreator 项目的pro文件
      • 运行/opt/QIX.XX.X/Tools/QtCreator/bin/qtcreator
  • 方式二
    • 一键安装  sudo apt install qtcreator qt5-default
    •   选择Desktop gcc-64-bit,Sources,developer and designer tools

 在linux平台生成项目的可执行程序是先通过qmake工具生成makefile文件,再通过make生成可执行程序,qmake在安装qt的时候就会一起安装好,在/opt/QIX.XX.X/x.xx.x/gcc_64/bin/qmake

在linux编译可执行程序步骤

  • 将项目放到ubuntu里,
  • 在项目里进行qmake编译出makefile,/opt/QIX.XX.X/x.xx.x/gcc_64/bin/qmake
  • 然后make进行生成可执行程序
  • 然后运行可执行程序

arm

arm的qmake工具从官网下载qt源代码经过一系列复杂的配置生成qmake工具

要先移植交叉编译链才能在ubuntu里生成arm的qt可执行文件,下面是步骤

  • 将交叉编译链压缩包拉到~目录底下
  • 进入~目录解压
  • 解压完可以在/usr/local/arm/x.x.x/usr/bin目录底下找到arm-linux-gcc
    • arm-linux-gcc只是一个链接文件,只是这个名字,我们用的是交叉编译链,不是arm-linux-gcc
  • 加入到环境变量中 export PATH=$PATH:/usr/local/arm/x.x.x/usr/bin

安装arm的qmake

  • 一般都是已经有现成的压缩包,将他拉到ubuntu上的/usr/local/里
  • 解压  sudo tar -xvf xxxx.tar.xz
  • 进入解压出来的文件夹里的bin文件夹里,找到qmake工具

在linux编译可执行程序步骤

  • 进入项目文件夹用arm的qmake进行编译,/usr/local/xxx.xx.x/bin/qmake
  • 再进行make生成可执行程序

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

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

相关文章

localstorage de yongfa

1. **设置一个项目** javascript localStorage.setItem("myCat", "Whiskers"); 2. **获取一个项目** javascript let myCat localStorage.getItem("myCat"); 3. **删除一个项目** javascript localStorage.removeItem(…

让Unity迭代器性能提升5倍

最近在研究Unity il2cpp的代码生成和编译优化,结合之前遇到过的一个优化案例,给大家讲讲在Unity中迭代器相关代码生成的底层原理,以及在写代码过程中需要注意的一些特殊情况。 案例 首先我们来看一个非常简单的案例,代码如下&am…

Linux实验记录:使用Apache服务部署静态网站

前言: 本文是一篇关于Linux系统初学者的实验记录。 参考书籍:《Linux就该这么学》 实验环境: VmwareWorkStation 17——虚拟机软件 RedHatEnterpriseLinux[RHEL]8——红帽操作系统 目录 前言: 备注: 正文&…

【C语言进阶篇】assert宏 使用详解

文章目录 一、assert简介 二、assert使用方法和规则 2.1 头文件 2.2 原型 2.3 功能 2.4 示例 2.5 assert的打开与关闭 三、注意事项 3.1 运行效率问题 3.2 assert只适用于调试版本 3.3 资源释放与清理 3.4 过度依赖 四、总结 个人主页: 倔强的石头的…

API横向越权修复之ID加密

横向越权 横向越权一般发生在应用系统做了【认证】,但没有做【鉴权】的情况下,也是最常见的漏洞之一。 认证:即识别是否有权限访问系统;鉴权:即识别在系统中的权限是什么; 例如: // 访问某…

氢气传感器报警值:守护实验室安全的隐形卫士

随着科技的发展,我们的生活变得越来越便捷,但是与此同时,安全问题也日益凸显。其中,氢气作为一种清洁能源,被广泛应用于各个领域,但是如果不加以控制,氢气泄漏也可能带来严重的安全隐患。因此&a…

柔性电流探头方向判断有哪些方法?干货分享!

柔性电流探头方向判断的方法干货分享!从理论到实践,助您成为专业人士!干货收藏,快看起来吧!      柔性电流探头方向判断一直是电力行业测试中的关键问题之一,确切地判断电流方向对于测试电力系统的稳定…

Docker部署xxl-job调度器并结合SpringBoot测试

文章目录 一、Docker部署1. 创建数据库2. 启动容器3. 访问4. 新建执行器 二、SpringBoot整合1. 模块注册到执行器2. 创建配置类3. 启动测试 三、任务发布-普通任务1. 编写任务代码2. 创建任务3. 启动任务 四、任务发布-分片任务1. 编写任务代码2. 启动多个实例3. 创建任务4. 启…

MYSQL Case When搜索查询

Case When可以用作select语句中的搜索,如果满足条件,就给字段附上结果值。 语法: CASE WHEN 表达式1 THEN 结果1 WHEN 表达式2 THEN 结果2WHEN 表达式3 THEN 结果3ELSE 其他结果 END简单的例子: 当学生表tb_student里&#xff…

CTF特训(二):青少年CTF-MISC部分WP

FLAG:当觉得自己很菜的时候,就静下心来学习 专研方向:MISC,CTF 每日emo:听一千遍反方向的钟,我们能回到过去吗? CTF特训(二):青少年CTF-MISC部分WP: 文章目录 CTF特训(二)&#xff1…

IDEA开发使用 thymeleaf 模板$表达式报红波浪线解决方案

系列文章目录 文章目录 系列文章目录后端存值前端取值thymeleaf 后端存值 RequestMapping("/testModelAndView")//使用ModelAndView时返回的方法类型必须是ModelAndViewpublic ModelAndView testModelAndView() {//创建ModelAndView对象ModelAndView mav new Model…

QT播放gstreamer命令(三)---使用QMediaPlayer

前文: 因为之前听说过,QMediaPlayer已经集成了gstreamer,但是并没有什么接口来例子来说明,根本看不出来有任何gstreamer的形式,于是在QT5助手里面搜了一下,发现确实有gstreamer的痕迹,但是例子写…

vue中template原理

在Vue中,template具有非常重要的作用,它能将数据渲染到用户界面上,达到我们所预想的效果。Vue的template是基于类似于html的语法,但是它还有一些独特的规则。在Vue中,template语法会被转换成虚拟DOM,在和Vu…

谷歌浏览器网站打不开,显示叹号

问题: 您与此网站之间建立的连接不安全请勿在此网站上输入任何敏感信息(例如密码或信用卡信息),因为攻击者可能会盗取这些信息。 了解详情 解决方式: 网上有很多原因,亲测为DNS问题,设置&…

Qt之窗口位置

Qt提供了很多关于获取窗体位置及显示区域大小的函数,如x(),y()和pos(),rect(),size(),geometry()等,统称为"位置相关函数"或"位置函数"。几种主要位置函数及其之…

82.1W/S的QPS到底大不大?

QPS,全称是Query Per Second,即每秒查询次数。它是一种衡量系统处理能力的重要指标。"每秒1万"的QPS对于一般的个人网站或者中小型网站来说,是相当高的。但是对于大型网站、互联网公司或高并发系统来说,可能就略显不足。…

第0章 Linux 基础入门

第0章 Linux 基础入门 RHCSA Red Hat Certified System Administrator 红帽认证系统管理员。 什么是计算机 计算机的组成: 控制器 运算器 存储器 输出设备 输入设备 计算机只能识别0和1,也就是二进制数。 为什么要学习Linux Linux 因其高效率…

Python||五城P.M.2.5数据分析与可视化_使用华夫图分析各个城市的情况(上)

目录 五城P.M.2.5数据分析与可视化——北京市、上海市、广州市、沈阳市、成都市,使用华夫图分析各个城市的情况 1.北京市的空气质量 2.广州市的空气质量 【上海市和成都市空气质量情况详见下期】 五城P.M.2.5数据分析与可视化——北京市、上海市、广州市、沈阳市、成…

重发布

一:作用 在两种路由协议之间,或者一个协议的不同进程之间,借助ASBR (同时工作在两种协议或 者协 议的不同进程中)学习到两个网络的路由信息,并且通过重发布进行路由共享,最终实现全网可 达。…

在mysql中我有一列字段,字段类型是Decimal,保留了2位小数,我想过滤这2位小数中不为0的数字,如何过滤呢?

直接看SQL如何实现 SELECT * FROM your_table_name WHERE amount - FLOOR(amount) > 0;解释 这里的FLOOR(amount)函数会返回amount的整数部分,amount - FLOOR(amount)就会得到小数部分。如果小数部分大于0,表示这个数字的小数部分不为0 扩展 如果…