1.前置依赖

sudo apt install build-essential
sudo apt install cmake

2.只安装默认的Qt模块

# 安装默认SDK
# Ubuntu18.04中默认安装版本是Qt5.9.5
sudo apt install qt5-default
# IDE 文档等等
sudo apt install qtcreator qt5tools-dev qt5tools-dev-tools qt5tools-doc qt5tools-examples
# 版本管理工具
sudo apt install qtchooser # Ubuntu20.04或22.04开始可能不支持上面的命令需要单独安装需要的模块
# 例如:
sudo apt install qtbase5-dev qtbase5-dev-tools
# 安装所有qt5开头的如qt5-qmake
sudo apt install qt5*
# IDE
sudo apt install qtcreator
# 版本管理工具
sudo apt install qtchooser

3.安装额外需要的模块

# 默认安装的SDK并不是全部模块都有,例如Svg模块就可能没有,需要单独安装
sudo apt install libqt5svg5

例如Ubuntu18.04安装Svg模块(我的是已经安装过一次了,所以执行命令时显示already ...)

3.修改版本管理器qtchooser的配置文件使其指向我们需要的Qt版本

# 进入其配置文件存放目录(其实不是真实位置,只是存放的软链接)
cd /usr/lib/x86_64-linux-gnu/qt-default/qtchooser # 修改配置文件
sudo vi default.conf
# 第一行是Qt安装目录的bin目录也就是qmake、moc、uic、rcc等工具所在目录
# 第二行是lib文件所在位置
# 如使用sudo apt命令安装的Qt那只需将原本的两行更改如下:
/usr/lib/qt5/bin
/usr/lib/x86_64-linux-gnu

ubuntu下qtchooser信息,可以看到可以通过环境变量来设置选择的qt版本

djh@djh-pc:/usr/bin$ qtchooser
Usage:
qtchooser { -l | -list-versions | -print-env }
qtchooser -install [-f] [-local] <name> <path-to-qmake>
qtchooser -run-tool=<tool name> [-qt=<Qt version>] [program arguments]
<executable name> [-qt=<Qt version>] [program arguments] Environment variables accepted:
QTCHOOSER_RUNTOOL name of the tool to be run (same as the -run-tool argument)
QT_SELECT version of Qt to be run (same as the -qt argument) djh@djh-pc:/usr/bin$ qtchooser -l
4
5
default
qt4-x86_64-linux-gnu
qt4
qt5-x86_64-linux-gnu
qt5
djh@djh-pc:/usr/bin$ ls qtchooser -lh
-rwxr-xr-x 1 root root 43K 12月 22 2017 qtchooser
dengjh@dengjh-pc:/usr/bin$

实际更改操作示例如下如图:

更正:

发现不需要修改也可以,只需要改变default.conf的软链接到qt5-x86_64-linux-gnu.conf文件即可

# 默认是链接到qt4的配置
djh@djh-pc:/usr/lib/x86_64-linux-gnu/qt-default/qtchooser$ ls -lh
总用量 0
lrwxrwxrwx 1 root root 53 5月 24 2016 default.conf -> ../../../../share/qtchooser/qt4-x86_64-linux-gnu.conf
# 去到真正的配置文件目录可以看到已经有qt4和qt5的配置
djh@djh-pc:/usr/share/qtchooser$ ls
qt4-x86_64-linux-gnu.conf qt5-x86_64-linux-gnu.conf
djh@djh-pc:/usr/share/qtchooser$ cat qt5-x86_64-linux-gnu.conf
/usr/lib/qt5/bin
/usr/lib/x86_64-linux-gnu

最新文章

  1. 基于Cesium1.26地图API下的GeoServer2.9.0服务器跨域设置
  2. div span
  3. jQuery带遮罩层弹窗实现(附源码)
  4. 解决My eclipse 工程发布时端口占用问题
  5. Third scrum meeting - 2015/10/28
  6. C#调用C dll,结构体传参
  7. 不用jsonp实现跨域请求
  8. 开始Unity3D参观考察
  9. 如何实现自己的ClassLoader
  10. Spring框架——批处理(batch)和事务(Transaction)
  11. Git上传项目到GitHub
  12. Vue.js的坑
  13. 浏览器加载 CommonJS 模块的原理与实现
  14. python中的双向链表实现
  15. canvas-9NonZeroAroundPrinciples.html
  16. mssql sqlserver null数据类型专题
  17. MyBatis中log4j 和 参数 和 分页和别名 功能
  18. CCF计算机职业资格认证考试题解
  19. MORMOT的数据序列
  20. [LeetCode] 383. Ransom Note_Easy tag: Hash Table

热门文章

  1. docker 第二课
  2. WebGoat-8.2.2靶场之不安全的反序列化漏洞
  3. Asp-Net-Core权限认证
  4. 处理流中的异常-JDK7-和JDK9流中异常的处理
  5. linux基础(部分讲解)
  6. 浅谈浏览器端 WebGIS 开发可能会用到的、提升效率的 js 库
  7. python自动发布-优化版本
  8. c++ stl 详解 csp备考
  9. SpringBoot+mybatis的驼峰命名转换不生效
  10. concurrent.futures之ThreadPoolExecutor python线程池代码实现方法