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

Linux下以编译源码的方式安装Qt5与Qt6及其使用

文章目录

      • 概要
      • 资源下载
      • 依赖安装
      • 编译
        • Qt5
        • Qt6
      • 遇到的问题
      • qtchooser
      • 使用

概要

  • 自 Qt 5.15 开始,不再提供 open source offline installers,也就是原来的 .run 的安装文件,只能通过源码编译来安装了
  • 参考文章

资源下载

  • 源码网址,链接为Qt的资源,根据自己选择下载
  • 例如
# 下载源码和源码的 md5 校验码  找你需要的版本
wget https://download.qt.io/official_releases/qt/6.5/6.5.3/single/qt-everywhere-src-6.5.3.tar.xz
wget https://download.qt.io/official_releases/qt/6.5/6.5.3/single/md5sums.txt
# 校验
md5sum qt-everywhere-opensource-src-6.5.3.tar.xz
# 解压并进入目录
tar -xvf qt-everywhere-opensource-src-6.5.3.tar.xz
cd qt-everywhere-src-6.5.3/

依赖安装

  • 以下命令涵盖了大部分基础编译的依赖项
sudo apt install bison build-essential flex gperf libasound2-dev libatkmm-1.6-dev libbz2-dev libcap-dev libcups2-dev libdrm-dev libegl1-mesa-dev libfontconfig1-dev libfreetype6-dev libglu1-mesa-dev  libicu-dev libnss3-dev libpci-dev libpulse-dev libssl-dev libudev-dev libx11-dev libx11-xcb-dev libxcb-composite0 libxcb-composite0-dev libxcb-cursor-dev libxcb-cursor0 libxcb-damage0 libxcb-damage0-dev libxcb-dpms0 libxcb-dpms0-dev libxcb-dri2-0 libxcb-dri2-0-dev libxcb-dri3-0 libxcb-dri3-dev libxcb-ewmh-dev libxcb-ewmh2 libxcb-glx0 libxcb-glx0-dev libxcb-icccm4 libxcb-icccm4-dev libxcb-image0 libxcb-image0-dev libxcb-keysyms1 libxcb-keysyms1-dev libxcb-present-dev libxcb-present0 libxcb-randr0 libxcb-randr0-dev libxcb-record0 libxcb-record0-dev libxcb-render-util0 libxcb-render-util0-dev libxcb-render0 libxcb-render0-dev libxcb-res0 libxcb-res0-dev libxcb-screensaver0 libxcb-screensaver0-dev libxcb-shape0 libxcb-shape0-dev libxcb-shm0 libxcb-shm0-dev libxcb-sync-dev libxcb-sync1 libxcb-util-dev libxcb-util0-dev libxcb-util1 libxcb-xf86dri0 libxcb-xf86dri0-dev libxcb-xfixes0 libxcb-xfixes0-dev libxcb-xinerama0 libxcb-xinerama0-dev libxcb-xkb-dev libxcb-xkb1 libxcb-xtest0 libxcb-xtest0-dev libxcb-xv0 libxcb-xv0-dev libxcb-xvmc0 libxcb-xvmc0-dev libxcb1 libxcb1-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxext-dev libxfixes-dev libxi-dev libxrandr-dev libxrender-dev libxslt1-dev libxss-dev libxtst-dev perl ruby  python-is-python2 llvm libclang-dev zstd dbus libpango1.0-dev libcogl-pango-dev libjpeg-dev libdbus-1-dev libdbus-glib-1-dev
sudo apt install libfontconfig1-dev libfreetype6-dev libx11-dev libx11-xcb-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev  libxkbcommon-dev libxkbcommon-x11-dev

编译

Qt5
./configure
# 键入 o 选择 open source 编译
# 键入 y 选择接受 license
sudo make -j8
sudo make install
Qt6
sudo cmake --build . --parallel
sudo cmake --install .
  • 编译后安装在/usr/local/xxx

遇到的问题

  • 编译QT5时遇到报错Project ERROR: Library 'assimp' is not defined. make[4]: *** [Makefile:85:sub-assimp-install_subtargets] 错误 3
    在这里插入图片描述
    解决方案思路
  • 修改改路径下文件
    在这里插入图片描述

在这里插入图片描述

  • 为以下内容
    在这里插入图片描述

qtchooser

  • qtchooser 是管理 Qt 版本的工具
sudo apt install qtchooser
# 其中 qt5.15.11 是我们给版本的命名, 后面的地址根据安装位置确定 (更换版本同理)
qtchooser -install qt5.15.11 /usr/local/Qt-5.15.11/bin/qmake
# 设置环境变量, 启用 qt5.15.11, 这个要与我们的命名保持一致
sudo vim /etc/profile
# 最后补充 
export QT_SELECT=qt5.15.11

在这里插入图片描述

使用

  • 打开QtCreator,添加好qmake即可使用
    在这里插入图片描述
http://www.lryc.cn/news/460716.html

相关文章:

  • 替换掉js后重启nginx 页面加载后js还是原来的 解决方法.【js版本号】【js不生效】【js失效】
  • SHELL脚本之输出语句的使用
  • 《大规模语言模型从理论到实践》第一轮学习--Fine-tuning微调
  • XGBoost回归预测 | MATLAB实现XGBoost极限梯度提升树多输入单输出
  • 【翻译】在 Python 应用程序中使用Qt Designer的UI文件
  • 002-Html
  • 微知-Mellanox提供的一个不错的测试rdma_cm方式建链的工具软件ucmatose?(ucmatose; ucmatose -s 1.1.1.1)
  • Vivado HLS C/RTL 联合仿真时间
  • Python实现图像加密与解密工具
  • 《RabbitMQ篇》消费者轮询消费消息
  • mongodb导入导出
  • 判断 HTTP/2 多路复用是否在服务器上实现
  • (已解决)vscode使用launch.json进行debug调试报错:Couldn‘t spawn debuggee:embedded null byte
  • windows桌面便签小工具,便签软件哪个好用?
  • 【Linux】C文件头文件数裁剪前58644个,裁剪后9373个
  • 线性自抗扰控制(LADRC)系统算法框图
  • 基于SSM的微信小程序博客管理系统(博客1)
  • text-behind-image:轻松创建文字背景图片设计
  • 前端reactvue3——实现滚动到底加载数据
  • qt 安装提示 无法定位程序输入点 systemparametersinfofordpi于动态链接库
  • 算法笔记day04
  • 实战篇:(四)Vue2 + Three.js 创建可交互的360度全景视图,可控制旋转、缩放完整代码
  • 【load_file读文件】
  • JavaScript object(2)
  • Acwing 排序
  • 分布式环境下验证码登录的技术实现
  • 数据结构-5.9.树的存储结构
  • 【Linux】解锁线程基本概念和线程控制,步入多线程学习的大门
  • uniapp学习(005-2 详解Part.2)
  • 深度学习的关键概念和术语