【软件】Ubuntu下QT的安装和使用

零、前言

QT是应用得比较广泛的程序框架,是因为其跨平台特性比较好,且用C/C++作为开发语言,性能也比较好,故本文介绍如何安装和使用QT,用的版本是QT 6.2.4,由于QT在Windows和Linux下的使用差别不大,故我使用Ubuntu系统来讲解。

壹、QT的下载

  1. QT在之前是可以使用离线包下载的,但是现在都是使用的在线安装包安装了,在在线安装程序中需要使用账号登录,故我们需要注册一个QT官网的账号:https://login.qt.io/register

  2. 接下来是下载QT安装程序,我们可以在QT官网下载:https://download.qt.io/official_releases/online_installers/,也可以在镜像源下载:https://mirrors.tuna.tsinghua.edu.cn/qt/official_releases/online_installers/https://mirrors.aliyun.com/qt/official_releases/online_installers/,由于某种原因,在官网下载比较慢,推荐在镜像源下载,根据自己的系统和处理器类型选择对应的文件下载即可,我的是Ubuntu系统,英特尔的x64处理器,所以我这边选择qt-unified-linux-x64-online.run(Windows系统,英特尔或AMD的x64处理器的可以选qt-unified-windows-x64-online.exe),如图:

贰、QT的安装

一、运行安装程序

我们需要在运行时通过传参为在线安装程序设置镜像源地址,具体操作如下:

Windows

Windows需要在打开的文件夹的路径处把路径全删除,输入cmd,按回车打开cmd窗口,执行如下命令(二选一):

:清华镜像源安装
qt-unified-windows-x64-online.exe --mirror https://mirrors.tuna.tsinghua.edu.cn/qt
:阿里镜像源安装
qt-unified-windows-x64-online.exe --mirror https://mirrors.aliyun.com/qt

Linux

Linux需要按Ctrl+Alt+T,在打开的bash中使用cd命令切换到下载目录,再执行如下命令:

# 添加运行权限
chmod +x qt-unified-linux-x64-online.run
# 运行在线安装程序(清华镜像源,和阿里镜像源二选一)
./qt-unified-linux-x64-online.run --mirror https://mirrors.tuna.tsinghua.edu.cn/qt
# 运行在线安装程序(阿里镜像源,和清华镜像源二选一)
./qt-unified-linux-x64-online.run --mirror https://mirrors.aliyun.com/qt

二、安装过程

整个安装过程中需要注意的点如下:

  1. 输入账号密码,登录QT账号。

  2. 同意使用开源QT的条款和条件。

  3. 提示“XCB”找不到,需要使用sudo apt install libxcb-cursor-dev libxcb-cursor0安装“XCB”,然后继续。

  4. debug信息,可以选择发送或不发送。

  5. 安装目录,大家可以自由选择,一般软件是放在根目录下opt文件夹中的,所以我创建了/opt/qt文件夹,并设置为安装目录。

  6. 勾选Archive,然后点击筛选按钮,在左边QT下勾选要安装的版本即可,这边我勾选安装6.2.4版本。

  7. 开始安装。

  8. 下载的东西挺多的,需要等挺久,我们耐心等待一下。

  9. 安装完成。

  10. QT编辑器主界面。



    主界面这边有三个提示,第一个是提示WebAssembly开发件套没有配置,第二个是提示安卓开发件套没有配置,第三个是问你是否开启界面向导程序带你熟悉一下界面,WebAssembly和安卓根据自己需求配置,界面向导可有可无。

至此,我们的QT就已经安装完成!

叁、QT的使用

一、创建项目

  1. 打开QT,在QT的主界面打开“欢迎”选项卡,点击“创建项目”按钮,进入到项目创建引导程序。

  2. 在新项目引导中,我们第一步选择“Application (QT)”,然后选择“Qt Widgets Application”,这是Qt窗口程序,然后点击“选择”按钮以继续。

  3. 配置一下项目名称和创建路径,创建路径建议在家目录下创建个QtProject目录,以后Qt的项目都放这里,这样方便管理,配置好后点击“下一步”按钮。

  4. 构建系统可以选qmake或者cmake,qmake适合小项目,比较简单灵活,且兼容Qt之前的版本,而cmake比较适合大项目,相对来讲稳定很多,大家根据自己的需要选择合适的构建系统。这边因为是示例,比较简单,故我选择qmake,选好之后点击“下一步”。

二、构建套件

在选择构建套件时,我们若只写C/C++代码,就只选GCC就好,但是GCC如果没有在电脑上配置好,便会出现如下警告,在“Desktop Qt 6.2.4 GCC 64 bit”前会有黄色的感叹号图标,此时,我们需要先在电脑上配置好GCC。如果没有警告的,则说明配置完成,跳过此部分。


  1. 打开bash终端,安装gcc和g++。
# 安装C语言编译器
sudo apt install gcc
# 安装C++编译器
sudo apt install g++
  1. 点击上面引导程序中构建套件选择页面里的“Desktop Qt 6.2.4 GCC 64 bit”后面的“管理”按钮,进入到首选项页面,在首选项中把C编译器和C++编译器选择为刚刚安装好的编译器,点击“确定”即可。

  2. 回到引导程序,点“下一步”,“完成”即可。

三、编译错误

完成后我们点左下角的绿色运行按钮即可编译并启动程序,然后第一次可能会出现如下错误,提示:-1: error: cannot find -lGL: No such file or directory,是没有安装libGL库,接下来讲如何解决。


  1. 使用以下命令检查libGL库是否安装(若提示locate命令找不到,可以使用sudo apt install plocate安装此命令):
locate libGL | grep libGLU
  1. 若没出现/usr/lib/x86_64-linux-gnu/libGLU.so.1/usr/lib/x86_64-linux-gnu/libGLU.so.1.3.1,则需要安装libgl1-mesa-dev,命令如下:
sudo apt-get install libgl1-mesa-dev
  1. 再次点击左下角的绿色运行按钮如果还是报错,则需要创建一个软链接:
sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/libGL.so
  1. 再次点击运行即可:

四、无法输入中文

建议使用系统自带ibus输入法框架, 不要安装其他输入法。

  • 安装中文语言

    在“设置setting”-“区域与语言Region&Language”-“管理已安装的语言Manage Install Languages”-“添加或删除语言

    Install/Remove Languages”中,安装中文简体。
  • 选择ibus框架

    在“设置setting”-“区域与语言Region&Language”-“管理已安装的语言Manage Install Languages”-“键盘输入法系统”中,

    选择ibus。
  • 应用

    点击“应用到整个系统”,然后关闭。
  • 安装ibus的pinyin
sudo apt install ibus-libpinyin
  • 在ibus首选项中添加中文输入法

    使用下面的命令打开ibus首选项,在ibus首选项中,点击“输入法”,添加“中文”-“智能拼音”,然后关闭。
ibus-setup
  • 重启电脑
reboot

肆、参考资料

  1. qt | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
  2. Qt | Tools for Each Stage of Software Development Lifecycle

【软件】Ubuntu下QT的安装和使用的更多相关文章

  1. Linux(Ubuntu)下MySQL的安装与配置

    转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...

  2. ubuntu下的openfire安装、配置、运行

    openfire服务器              Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议.您可以使用它轻易的构建高效率的即时通信服务器.Op ...

  3. 2010-01-20 12:09 ubuntu下minicom的安装及使用

    转http://hi.baidu.com/npugtawqdnbgqrq/item/106f805409b42813db163527 ubuntu下minicom的安装及使用 安装: sudo apt ...

  4. ubuntu下root和安装mysql

    sudo password创建新的root密码: 1.用当前登录用户打开终端,在终端输入命令 sudo passwd,输入当前用户的密码然后回车 2.会提示输入新密码,输入完成后回车(http://w ...

  5. Ubuntu下FileZilla的安装

    FileZilla是一个免费而且开源的FTP客户端软件,共有两种版本:客户端版本.服务器版本.FileZilla有条理的界面和管理多站点的简化方式使得FileZilla Client成为一个方便高效的 ...

  6. Ubuntu下FileZilla的安装(转载)

    转自:http://os.51cto.com/art/201103/247564.htm FileZilla是一个免费而且开源的FTP客户端软件,共有两种版本:客户端版本.服务器版本.FileZill ...

  7. Ubuntu下git的安装与使用

    Ubuntu下git的安装与使用 Ubuntu下git的安装与使用与Windows下的大致相同,只不过个人感觉在Ubuntu下使用git更方便. 首先,确认你的系统是否已安装git,可以通过git指令 ...

  8. Ubuntu下Speedtest的安装

    要安装Speedtest,需要先安装apache,参见<Ubuntu下Apache的安装>一文:*(再安装LAMP server,参见<Ubuntu下快速安装LAMP server& ...

  9. Ubuntu下Apache的安装

    Ubuntu下可快速安装LAMP server(Apache+MySQL+PHP5),参见<Ubuntu下快速安装LAMP server>一文. 也可以手动安装Apache.本文介绍如何手 ...

  10. WIN7 下 Qt Creator 安装 QWT

    WIN7 下 Qt Creator 安装 QWT 环境:WIN7 +QT Creator2.6.2 1.下载QWT源代码 qwt-6.1-rc3.zip 2 编译QWT  open projects- ...

随机推荐

  1. vue基础3

    1.watch 案例:百度搜索框 注释的是用watch实现的 然后这个我用的是oninput事件 a.深浅监听 浅监听 深监听(不建议使用) 2.过滤器 全局: Vue.fliter('过滤器名字', ...

  2. 最全Zookeeper面试题总结

    1. ZooKeeper 是什么? ZooKeeper 是一个开源的分布式协调服务.它是一个为分布式应用提供一致性服务的软件,分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅.负载均 ...

  3. w3cschool-Flink 入门

    Flink 入门   Apache Flink是一个框架和分布式处理引擎,用于在无界和有界数据流上进行有状态的计算.Flink被设计为在所有常见的集群环境中运行,以内存中的速度和任何规模执行计算. A ...

  4. 【java提高】---细则(1)

    异常 一.异常与错误的区别 再讲异常之前我们就应该要知道异常和错误的区别 Error类和Exception类的父类都是throwable类,他们的区别是: Error类一般是指与虚拟机相关的问题,如系 ...

  5. EXCEL VSTO插件开发(一)-FuTools Excel

    Excel VSTO插件开发之旅:我与FuTools Excel的共同成长在踏入Excel VSTO插件开发的领域之前,我不过是一名普通的Excel用户,对数据的处理和分析充满好奇却时常感到力不从心. ...

  6. RELIC库学习

    <RELIC库学习> 文章介绍:密码学与区块链技术实验室向开源项目RELIC贡献国密算法代码 了解 RELIC是由Diego F. Aranha开发的高效.灵活的开源密码原语工具箱,包含多 ...

  7. Java类加载机制与JVM运行时数据区各逻辑内存区域与JDK的版本相关差异浅谈

    Java类加载机制与JVM运行时数据区各逻辑内存区域与JDK的版本相关差异浅谈 [摘要] JVM(Java Virtual Machine)作为Java研发人员工作的每天都会接触到的虚拟机,其运行机制 ...

  8. 基本类型、包装类与String类间的转换

  9. Fractal pg walkthrough Easy

    nmap ┌──(root㉿kali)-[~] └─# nmap -p- -A 192.168.157.233 Starting Nmap 7.94SVN ( https://nmap.org ) a ...

  10. .Net类型 值类型

    预定义类型值类型 数据类型C#关键字(如 int.short 和 string) 从编译器映射到.NET数据类型.例如,在C#中声明一个int类型的数据时声明的实际是.Net System.Int32 ...