Ubuntu 源码安装 Qt5
1.开发背景
Ubuntu 下安装指定版本的 Qt,最新的Qt官方已经不支持 Qt5.15.2 版本以下版本,所以有必要用旧的源码编译 Qt 库。
2.开发需求
源码安装 Qt5.12.2
3.开发环境
开发环境:Ubuntu18.04
目标版本:Qt5.12.2
4.实现步骤
4.1 下载安装包
通过网盘分享的文件:qt-everywhere-src-5.12.2.tar.xz
链接: https://pan.baidu.com/s/1TW1wjoNmX-q93QDxA5-24g?pwd=29mq 提取码: 29mq
4.2 安装辅助软件
sudo apt update
sudo apt install build-essential libgl1-mesa-dev libglu1-mesa-dev libx11-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libx11-xcb-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev libxcb-xinerama0-dev libxkbcommon-dev libxkbcommon-x11-dev libfontconfig1-dev libfreetype6-dev libpng-dev libjpeg-dev libsqlite3-dev libssl-dev libicu-dev libpcre2-dev zlib1g-dev libbz2-dev libdouble-conversion-dev
4.3 配置源码
./configure -prefix /opt/Qt5.12.2 -opensource -confirm-license -release -nomake examples -nomake tests -qt-xcb
-prefix /opt/Qt5.12.2:指定安装路径。
-opensource:选择开源版本。
-confirm-license:自动确认许可协议。
-release:编译发布版本。
-nomake examples 和 -nomake tests:不编译示例和测试。
-qt-xcb:使用 XCB 作为 X11 后端。
4.4 编译源码
# 自行选择几核编译
make -j8
4.5 安装库
sudo make install
4.6 添加环境
echo 'export PATH=/opt/Qt5.12.2/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
4.7 验证安装
qmake -v
相关文章:
Ubuntu 源码安装 Qt5
1.开发背景 Ubuntu 下安装指定版本的 Qt,最新的Qt官方已经不支持 Qt5.15.2 版本以下版本,所以有必要用旧的源码编译 Qt 库。 2.开发需求 源码安装 Qt5.12.2 3.开发环境 开发环境:Ubuntu18.04 目标版本:Qt5.12.2 4.实现步骤 4…...
【NLP 29、项目 Ⅰ:电商评论分类(好评 / 差评) 】
目录 项目介绍 一、训练及测试数据 二、代码实现 1.配置文件 config.py 2.分割训练集和验证集 split_train_valid.py 3.数据加载文件 loader.py Ⅰ、 加载和处理数据 DataGenerator ① 初始化 ② 数据加载 ③ 文本编码 ④ 补齐 / 截断 ⑤ 获取数据集长度和指定索引的数据 Ⅱ、加…...
Linux进程基础知识
1. 什么是进程? 进程就是运行中的程序,是系统资源分配的基本单位 每个进程都有唯一的PID(进程ID) 进程有父子关系,通过ps -ef可以查看 2. 进程的创建 - fork() pid_t pid fork(); - 简单理解:fork()…...
halcon deeplearn 语义分割经验分享 1
本人因为公司遗留问题,为了解决识别错误的问题。尝试过yolo12进行目标检测。初步测试良好但是是halcon的socket通信不行。故而去测试halcon 的deeplearn。自己标注数据。 注: 这个软件使用非常无脑。推荐没有基础的人去用 语义分割 以下是halcon的调用模型 *读取模型 read_dl_…...
从零开始的python学习(五)P75+P76+P77+P78+P79+P80
本文章记录观看B站python教程学习笔记和实践感悟,视频链接:【花了2万多买的Python教程全套,现在分享给大家,入门到精通(Python全栈开发教程)】 https://www.bilibili.com/video/BV1wD4y1o7AS/?p6&share_sourcecopy_web&v…...
Kylin麒麟操作系统服务部署 | ISCSI存储服务
以下所使用的环境为: 虚拟化软件:VMware Workstation 17 Pro 麒麟系统版本:Kylin-Server-V10-SP3-2403-Release-20240426-x86_64 一、网络存储结构 网络存储技术(Network Storage Technologies)是基于数据存储的一种通…...
数据结构_单链表
今天我们要开启链表的学习 🖋️🖋️🖋️ 学了顺序表我们可以知道: 🎈链表其实就是争对顺序表的缺点来设计的,补足的就是顺序表的缺点 🎈链表在物理上是上一个节点存放的下一个节点的地址 链表 …...
深陷帕金森困境,怎样重燃生活信心?
帕金森,这个悄然影响无数中老年人生活的神经系统疾病,正逐渐走进大众视野。患病后,患者常出现静止性震颤,安静时手部、下肢不自主抖动,如同在默默诉说着身体的异常。肢体变得僵硬,行动迟缓,起步…...
C语言(23)
字符串函数 11.strstr函数 1.1函数介绍: 头文件:string.h char *strstr ( const char * str1,const char *str2); 作用:在一个字符串(str1)中寻找另外一个字符串(str2)是否出现过 如果找到…...
Docker运行hello-world镜像失败或超时:Unable to find image ‘hello-world:latest‘ locally Trying to pull reposi
Docker运行hello-world镜像失败或超时,报错:Unable to find image ‘hello-world:latest’ locally Trying to pull repository docker.io/library/hello-world … /usr/bin/docker-current: missing signature key. See ‘/usr/bin/docker-current run …...
Linux内核如何和设备树协同工作的?
1.编写设备树 cd arch/riscv/boot/dts/ 再cd到厂商,例如下述内容。 2.编译设备树(dts->dtb)通过dtc命令来转换 3.解析设备树 例如上述内容,都是对设备树的解析。 这里重点说一下内核对设备树的处理吧,因为这个内…...
electron的通信方式(三种)
文章目录 一、渲染进程向主进程发送消息二、渲染进程向主进程发送消息并异步获取结果三、主进程向渲染进程发送消息 electron的主要是主线程和渲染线程之间的通信,简单记录一下三种通信方式 一、渲染进程向主进程发送消息 利用ipcRenderer.send()和ipcMain.on()方法…...
LLM中的transformer结构学习(二 完结 Multi-Head Attention、Encoder、Decoder)
文章目录 LLM中的transformer结构学习(二 完结 Multi-Head Attention、Encoder、Decoder)Self-Attention (自注意力机制)结构多头注意力 EncoderAdd & Norm 层Feed Forward 层 EncoderDecoder的第一个Multi-Head AttentionMas…...
高效编程指南:PyCharm与DeepSeek的完美结合
DeepSeek接入Pycharm 前几天DeepSeek的充值窗口又悄悄的开放了,这也就意味着我们又可以丝滑的使用DeepSeek的API进行各种辅助性工作了。本文我们来聊聊如何在代码编辑器中使用DeepSeek自动生成代码。 注:本文适用于所有的JetBrains开发工具,…...
嵌入式c学习四
c语言的输入输出:ANSI组织发布的标准c库,使用函数需要包含对应头文件,使用输入输出函数时需要包含stdio.h (stdio -> standard input output)标准输入输出 格式化输出:int printf(const char * restrict format, ...)…...
爱可以传递,幸福可以具象化
遇到什么:晚上上课学生吵吵吵,把学生手机全部收了,放讲台上。 感受到的情绪:很烦躁。 反思:收手机也不是长久之计,可是物理有什么翻转课堂呢? 明天的待办事项:早上高数选修课&#x…...
力扣-数组-367 有效的完全平方数
思路和时间复杂度 思路:利用二分,确定区间是左闭右闭,然后根据大小进行二分时间复杂度: 代码 class Solution { public:bool isPerfectSquare(int num) {bool flag false;if(num 0 || num 1) return true;long long …...
Java关键字与标识符
Java关键字是预定义的保留字,用于定义程序结构和语义,如if、for、class等,不能用作标识符。JDK 8有50个关键字,JDK 11引入var用于局部变量类型推断。标识符用于命名变量、类等,由字母、数字、_、$组成,不能…...
【神经网络】python实现神经网络(二)——正向推理的模拟演练
一.神经网络假设 在开始讲解之前,首先我们假设有这样一套神经网络,一共有三层: 其中,关于神经网络的权重、偏置的符号定义如下(如果不知道什么是权重和偏置,可以参考我之前写过的一篇文章:【机器学习】机器学习是什么意思): 以下文章将沿用以上这个设…...
DeepSeek模型本地化部署方案及Python实现
DeepSeek实在是太火了,虽然经过扩容和调整,但反应依旧不稳定,甚至小圆圈转半天最后却提示“服务器繁忙,请稍后再试。” 故此,本文通过讲解在本地部署 DeepSeek并配合python代码实现,让你零成本搭建自己的AI…...
Rust规律归纳随笔
1. 针对所有权规则: 唯一所有权 <------------> 智能指针(引用计数)<-------------->共享所有权 (引用计数) { 单线程:Rc 多线程:Arc } 2. 针对借用规则: 共享不可变(多读)<----->…...
Houdini SOP层 Scatter节点
SOP 代表 Surface Operator(几何体操作节点),所有几何体的建模、变形、分布等操作都在此层级完成。 Scatter节点的作用就是 以不同的密度在模型表面撒点 Scatter 节点属于 SOP(几何体)层级: 进入 Geometr…...
Win7 火狐浏览器 Mozilla Firefox 115.7.0esr下载地址(及Chrome、Supermium浏览器)
如题,官网下载地址: Mozilla Firefox 115.7.0esr 已经发布,感兴趣的朋友可去官方下载! https://ftp.mozilla.org/pub/firefox/releases/115.7.0esr/ 其他方案: 1、谷歌 Chrome 浏览器的 109版本,即最后一…...
Docker 学习笔记:从入门到部署,实战演练全流程!
📌 开篇:为什么要学 Docker? 还在为环境不一致、部署麻烦、依赖冲突头疼吗?Docker 让一切变得简单!作为现代开发和运维的神器,Docker 让我们可以用 一句命令 解决 “在我电脑上能跑” 的问题。今天&#x…...
【网络安全工程】任务12:网络安全设备
目录 一、防火墙 1、作用 2、配置方式 3、存在的漏洞 二、入侵检测系统(IDS)和入侵防御系统(IPS) 1、作用 2、配置方式 3、存在的漏洞 三、防病毒网关 1、作用 2、配置方式 3、存在的漏洞 …...
Linux 进程控制:创建、终止、等待与程序替换全解析
亲爱的读者朋友们😃,此文开启知识盛宴与思想碰撞🎉。 快来参与讨论💬,点赞👍、收藏⭐、分享📤,共创活力社区。 目录 1.进程创建 1-1 fork函数初识 1-2 fork函数返回值 1-3…...
SwiftUI 让视图自适应高度的 6 种方法(四)
概览 在 SwiftUI 的世界里,我们无数次都梦想着视图可以自动根据布局上下文“因势而变”。大多数情况下,SwiftUI 会将每个视图尺寸处理的井井有条,不过在某些时候我们还是得亲力亲为。 如上图所示,无论顶部 TabView 容器里子视图…...
机器学习中的梯度下降是什么意思?
梯度下降(Gradient Descent)是机器学习中一种常用的优化算法,用于最小化损失函数(Loss Function)。通过迭代调整模型参数,梯度下降帮助模型逐步逼近最优解,从而提升模型的性能。 1.核心思想 梯…...
opencv-显示图片
安装软件 sudo apt install python3 //确保虚拟机只有python3 ln -sf /usr/bin/python3.6 /usr/bin/python sudo apt install python3-pip pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple pip install opencv-contrib-python -i https://pypi.tuna…...
sap关账+策略模式(避免大量if elseif)
旧代码 Transactional(rollbackFor Exception.class)public AjaxResult purchaseOrderReceiptOutSourceAfterSapCloseAccountingPeriod(Long id) {SysPurorderPostingLog sysPurorderPostingLog sysPurorderPostingLogMapper.selectSysPurorderPostingLogById(id);if (Object…...
