银河麒麟V10 + 飞腾CPU编译安装 Qt5.9.9

news2025/2/26 14:59:22

一、准备工作

1. 下载Qt源码包

这里我们要编译的是Qt5.9.9,下载网址:https://download.qt.io/archive/qt/5.9/5.9.9/single/

        在任意空闲位置新建文件夹,并将源码包放到该目录下。(这里在/home目录下新建名为Qt_Source的文件夹,注:该目录所在位置的空闲空间应大于等于15G)

2. 解压压缩包

在该目录下执行命令:

sudo xz -d qt-everywhere-opensource-src-5.9.9.tar.xz
sudo tar -xvf qt-everywhere-opensource-src-5.15.2.tar

3. 安装所依赖的库

1)、安装基础编译环境

sudo apt-get install libxcb-xinerama0-dev
sudo apt-get install build-essential perl python git

2)、安装编译Libxcb的相关依赖

sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev

二、编译安装

1. 修改源码

        在源码路径下的qtserialbus/src/plugins/canbus/socketcan找到socketcanbackend.cpp并打开,添加头文件#include <linux/sockios.h>。不添加这个头文件,在后面make install的时候会报错,添加后即可解决问题。

2. 输入配置指令和参数

        回到qt源码目录,执行指令:

./configure -prefix /usr/local/Qt-5.9.9 -release -opensource -nomake examples -nomake tests -confirm-license -shared -no-pkg-config -no-opengl -no-iconv -qt-xcb

        注意此处,-prefix后面的目录表示安装到的目录。要加-no-opengl, 实测后续会遇到Test OpenGL fail的问题。不过也可以一开始不加,如果后面出问题再加。

        部分参数说明:

-prefix指定安装路径。

-platform选项指定了编译时使用的编译器.

-release在关闭调试的情况下编译和链接Qt。

-opensource Qt的开源版本的编译和链接。

-shared 创建和使用共享Qt库。

-nomake <part> 从要构建的部件列表中排除部分。

-xplatform <spec> 交叉编译的操作系统和编译器。有关支持的操作系统和编译器的列表,请参阅README文件。

-no-iconv不支持iconv

-xcb 使用系统安装的xcb

         几分钟后配置检查完毕,输出:

...
...
...

Note: Also available for Linux: linux-clang linux-icc

Note: Disabling X11 Accessibility Bridge: D-Bus or AT-SPI is missing.

Qt is now configured for building. Just run 'make'.
Once everything is built, you must run 'make install'.
Qt will be installed into '/usr/local/Qt-5.9.9'.

3. make & make install

        编译源码,允许4个编译命令同时执行,提高编译效率,执行命令:

make -j 4

        编译完成后,执行命令:

make install

        make 时间较长,大概要一个小时左右,make install 就快多了,耐心等待吧……

        等待指令执行结束,Qt会安装在配置时指定的目录下,此时,Qt编译安装成功!

三、安装QtCreator并配置

1. 安装QtCreator

        打开软件商店,在里面搜索Qt Creator,直接安装:

2.  设置Qt Version和Kit

         安装好之后,打开Qt Creator,点击工具->选项,设置Qt Version和Kit:

        选择你安装路径的bin目录下的qmake,点击打开: 

         在构建套件(Kit)中,选择桌面,然后下拉:

         设置Qt使用的版本是刚才我们编译的Qt5.9.9:

 3. 查看Qt版本

1)、查看系统中所有的qmake:

qtchooser -l

可查看当前系统中qmake的版本

2)、安装qmake

qtchooser -install qt5.9.9 /usr/local/Qt-5.9.9/bin/qmake

注:绿色部分是安装的名称,可任意命名(此处命令中不含"`")

红色部分是qmake的绝对路径(此处命令不含" ’ '")

3)、设一下环境变量,设置默认qmake为刚才添加的最新版本:(该处只是添加了临时变量,建议直接添加到/etc/profile环境变量中)

export QT_SELECT=qt5.9.9

4)、查看当前系统应用的qmake版本:、

qmake –v

四、创建新项目运行试试

        创建新项目,遇到问题,设计时界面显示正常,但运行后控件文字不显示。

        这个问题的原因是,字体缺失,解决方案:

1. 从别处找一些字体文件,例如其他Windows电脑上的C:\Windows\Fonts下面的ttf文件。

2. 在Qt安装目录的lib文件夹下新建文件夹,名称为fonts

3. 将ttf文件拷贝至../lib/fonts文件夹

        拷贝test1文件夹下所有文件到test2文件夹的命令: 

cp -r /TEST/test1/* /TEST/test2

        有了字体文件后,再运行创建的新项目:

         OK!至此,Qt安装完毕,顺利运行!!!

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

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

相关文章

Unity Animancer插件(二)精确控制

一、通过名称播放动画 前面我们讲的都是直接通过动画片段的引用播放动画&#xff0c;Animancer也提供了直接通过动画名称来播放动画的方法。但这并不是推荐的使用方式&#xff0c;因为通过字符串播放比通过引用播放效率略低&#xff0c;且更难维护。 首先我们需要在角色身上挂…

2022年ACM杰出会员名单公布:23位华人学者入选

12月7日&#xff0c;2022年度ACM杰出会员&#xff08;Distinguished Member&#xff09;名单公布&#xff01; 本次评选设有三个奖项&#xff0c;分别表彰在计算机领域做出的教育贡献、工程贡献和科学贡献。 ACM创立于1947年&#xff0c;目前在全球130多个国家和地区拥有超过…

OceanBase 4.0 解读:降低分布式数据库使用门槛,谈谈我们对小型化的思考

关于作者 赵裕众 OceanBase 资深技术专家&#xff0c;2010 年加入支付宝后从事分布式事务框架的研发&#xff0c;2013 年加入 OceanBase 团队&#xff0c;目前负责存储引擎相关的研发工作。 近年来&#xff0c;随着应用场景多样化和数据量的增长&#xff0c;我们看到分布式数据…

判别分析-书后习题回顾总结

5-2 题目 理论基础 多总体的距离判别 马氏距离&#xff1a;dG2(x)(x−μ)2σ2d^{2}_{G}(x)\frac{(x-\mu)^{2}}{\sigma^{2}}dG2​(x)σ2(x−μ)2​ 取马氏距离最小的那一个&#xff0c;就属于这类。 贝叶斯判别准则 计算qtft(x)q_{t}\times f_{t}(x)qt​ft​(x) ft(x)12πσ…

001:Object-C介绍、创建第一个iOS工程、MVC架构

常见APP基础业务模块&#xff1a; 常见App类型&#xff1a;通信与存储、流媒体、直播技术、图片处理、内容展示、Web、组件化、IM类型、音视频、直播类型、摄影摄像类型、资讯类型、工具、购物类型。 App 展示界面动画&#xff1a;底部TabBar、Navigation、列表、图片ImageVi…

一文囊括Ceph所有利器(工具)

原文链接: 知乎专栏: 一文囊括Ceph所有利器(工具) - 知乎 前言 ceph的工具很多&#xff0c;包括集群管理与运维&#xff0c;还有性能分析等等。 所以本文期望应收尽收所有的工具&#xff0c;也当做自己的一个梳理与总结&#xff0c;当自己需要的时候知道有哪些利器可以使用…

一文搞懂SSL/TLS

SSL/TLS1. 概述2. 协议组成2.1 握手协议&#xff08;Handshake protocol&#xff09;2.2 记录协议&#xff08;Record Protocol&#xff09;2.3 警报协议&#xff08;Alert Protocol&#xff09;3. 密码套件与密钥生成1. 概述 安全套接字层&#xff08;SSL&#xff0c;Secure …

使用 X2MindSpore 迁移 Pytorch 训练脚本mobileNet支持分布式训练

简介 MindSpore是华为昇腾开发的深度学习框架&#xff0c;旨在提供端边云全场景的AI框架。 Pytorch是由Facebook推出的AI框架。 本教程使用MindStudio中的X2MindSpore功能自动将Pytorch脚本转换为MindSpore脚本的案例。使用的模型是分类任务模型mobileNet&#xff0c;数据集是c…

【自动化测试】Selenium IDE脚本编辑与操作(了解)

之前&#xff0c;我们录制脚本时是录制鼠标和键盘的所有在浏览器的操作&#xff0c;那么脚本会出现多余的步骤&#xff0c;有时候我们需要手动填写脚本或修改脚本&#xff0c;所以我们有必要对selenium IDE脚本编辑与操作有所了解&#xff1b;&#xff08;采用录制的方式很容易…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java校园招聘管理系统968b0

毕业设计也不需要做多高端的程序&#xff0c;毕业设计对于大多数同学来说&#xff0c;为什么感觉到难&#xff0c;最重要的一个原因&#xff0c;那就是理论课到实践课的转变&#xff0c;很多人一下不适应&#xff0c;本能开始拒绝&#xff0c;如果是一个考试&#xff0c;大家都…

【大数据入门核心技术-Hbase】(一)HBase简介

目录 一、HBase基本概述 1、Hbase是什么 2、什么时候用Hbase&#xff1f; 二、HBase基本架构 1、Client 2、Zookeeper 3、HMaster 4、 RegionServer 三、HBase逻辑结构 一、HBase基本概述 1、Hbase是什么 HBase是一个分布式的、面向列的开源数据库&#xff0c;该技术…

pstore

pstore简介 pstore最初是用于系统发生oops或panic时&#xff0c;自动保存内核log buffer中的日志。不过在当前内核版本中&#xff0c;其已经支持了更多的功能&#xff0c;如保存console日志、ftrace消息和用户空间日志。同时&#xff0c;它还支持将这些消息保存在不同的存储设…

新手教程 | 手把手教你 谷歌浏览器如何使用HTTP代理?

本文将针对谷歌浏览器如何使用代理IP进行详细说明&#xff0c;具体步骤如下&#xff1a; 1、代理IP信息查看 查看自己所购买的相对应的代理IP面板&#xff0c;点击代理IP -查看详情-进行查看“AuthKey”以及“AuthPwd”信息。 2、代理IP资源提取 在控制台-代理IP-中的“提取…

Spring cloud Gateway 服务网关 实战

Spring cloud Gateway 服务网关一、简介优点&#xff1a;特性&#xff1a;总结&#xff1a;二、核心概念三、路由规则1、Path2、Query3、Method4、Datetime5、RomoteAddr6、Header四、动态路由1、依赖2、配置动态获取URI服务名称转发五、过滤器1、网关过滤器 GatewayFilter局部…

Allegro如何给差分过孔添加禁布操作指导

Allegro如何给差分过孔添加禁布操作指导 Allegro支持给差分过孔添加禁布,让它避让周围的铜皮,具体操作如下 以下图两个过孔为例,需要做一个和via避让铜皮尺寸一样大的禁布 选择show element命令 Find选择Other segs 鼠标移动到铜皮避让圆形的地方 出现一个report,记住…

【并发编程】SemaphoreCountDownLatchCyclicBarrier

一、Semaphore Semaphore 通常又被称为信号量&#xff0c; 可以用来控制同时访问特定资源的线程数量&#xff0c;通过协调各个线程&#xff0c;以保证合理的使用资源。 1.简单的使用 1-1.控制线程的并发连接数 public static void main(String[] args) {// 只允许两个线程执…

中英翻译《动物看见了什么》

What animals see 动物看见了什么 一、Pre-reading activity 阅前思考 1.What animals do you like? 你喜欢什么动物&#xff1f; 2.Do you have any animals in your home? 你家里有动物吗&#xff1f; 3.Do you think most animals can see as well as we can? 你认为大多…

Windows下docker安装

安装 1.打开Hyper-V &#xff0c;在"启用或关闭Windows功能" 如果这里的Hyper-V平台灰色不能勾选 显示无法安装Hyper-v该固件中的虚拟化支持被禁用&#xff0c;则需要开启 开始方式&#xff1a; 重启电脑进入BIOSS界面 点击高级–>CPU设置 —> Intel virtu…

44. python的for循环嵌套

44. python的for循环嵌套 文章目录44. python的for循环嵌套1. 什么是嵌套2. for循环中嵌套有if条件判断语句2.1 先创建一个奇数序列2.2 判断一个数是否能被7整除2.3 将2部分代码合二为一3. for循环中嵌套有for循环1. 什么是嵌套 嵌套是指一个对象中包含另一个与它相似的对象。…

Python 中在两个字典中查找公共键

Python 中要在两个词典中查找公共键&#xff1a; 使用 dict.keys() 方法获取每个字典的键的视图对象。使用 & 符号获取常用键。使用 list() 类将结果转换为列表对象。 dict1 {name: jiyik, topic: Python, salary: 100} dict2 {name: alice, salary: 100, experience: …