Qt5 C++14教程 -- Qt5介绍

目录

下载并解压

测试一个小的 GUI 示例


在 Qt5 教程的这一部分,我们将介绍 Qt5 库。我们将安装 Qt5 库并创建我们的第一个小型 Qt5 应用程序。

Qt 最初由挪威软件公司 Trolltech 开发。 2008 年,该公司被诺基亚收购。 2012 年 8 月,一家芬兰开发公司 Digia 从诺基亚收购了 Qt 软件技术。同时创建了一个 Qt 项目,其中继续开发开源 Qt。可以在 qt.io 找到开源 Qt 工具包的网站。 Qt 目前由 Digia 的子公司 Qt 公司和 Qt 项目在开源治理下开发,涉及个人开发人员和公司。

Qt
Qt 是一个跨平台的应用程序开发框架。使用 Qt 开发的一些知名应用程序包括 KDE、Opera、Google Earth、Skype、VLC、Maya 或 Mathematica。 Qt 于 1995 年 5 月首次公开发布。它是双重许可的。它可用于创建开源应用程序以及商业应用程序。 Qt 工具包是一个非常强大的工具包。它在开源社区中非常成熟。全世界有成千上万的开源开发人员使用 Qt。

下载并解压


我们转到 download.qt.io/official_releases/qt/ 页面。 (由于过去下载链接经常更改,您可能需要搜索当前链接。)我们选择最新的 Qt 5.x 源。在创建本教程时,最新的源代码是 Qt 5.5.1。接下来,我们将从源代码安装 Qt。

$ ls qt-everywhere-opensource-src-5.5.1.tar.gz
qt-everywhere-opensource-src-5.5.1.tar.gz
从下载页面,我们下载了 Qt5 源代码。我们使用 TAR 文件。 (我们为自己省去了一些麻烦。ZIP 文件有 Windows 行结尾。)

$ tar -xzvf qt-everywhere-opensource-src-5.5.1.tar.gz
该命令会将所有文件解压缩到目录 qt-everywhere-opensource-src-5.5.1/。

$ du -hs qt-everywhere-opensource-src-5.5.1
2.0G qt-everywhere-opensource-src-5.5.1
目录的大小现在是 2 G。

$ cd qt-everywhere-opensource-src-5.5.1/
我们进入创建的目录。在 README 文件中有安装说明。安装简单直接,但需要相当长的时间。

从源码安装
在我们开始构建 Qt5 之前,我们可能想要安装一些额外的库。例如,如果我们想从 Qt 连接到 MySQL,我们需要在我们的系统上安装 libmysqld-dev。

我们以经典方式安装库。在 Unix 系统上,软件的安装分为三个步骤。

配置
建造
安装
$ ./configure -prefix /usr/local/qt5
您要使用哪个版本的 Qt?

如果您想使用商业版,请键入“c”。
如果您想使用开源版,请键入“o”。
首先我们运行配置脚本。该脚本将询问我们是否需要 Qt5 库的商业版或开源版。该脚本将为我们的机器类型配置库。默认情况下,Qt 将安装在 /usr/local/Qt-5.5.1/ 目录中。这可以通过配置脚本的 -prefix 参数进行更改。我们将库安装到 /usr/local/qt5/ 目录中。请注意,安装词在这里有两个含义。它是由所有三个步骤组成的整个过程。它也意味着“将文件移动到特定目录”,这是最后的第三步。

This is the  Open Source Edition.

You are licensed to use this software under the terms of
the Lesser GNU General Public License (LGPL) versions 2.1.
You are also licensed to use this software under the terms of
the GNU General Public License (GPL) versions 3.

Type '3' to view the GNU General Public License version 3.
Type 'L' to view the Lesser GNU General Public License version 2.1.
Type 'yes' to accept this license offer.
Type 'no' to decline this license offer.

Do you accept the terms of either license? yes

确认许可协议。

Running configuration tests...
The test for linking against libxcb and support libraries failed!
 You might need to install dependency packages, or pass -qt-xcb.

如果脚本失败并显示上述消息,我们要么需要安装一些额外的 xcb 库,要么使用 -qt-xcb 选项再次运行脚本。

$ ./configure -prefix /usr/local/qt5 -qt-xcb

使用 -qt-xcb 选项,构建一些库而不是链接到系统库。

...
Qt modules and options:
  Qt D-Bus ............... yes (loading dbus-1 at runtime)
  Qt Concurrent .......... yes
  Qt GUI ................. yes
  Qt Widgets ............. yes
  Large File ............. yes
  QML debugging .......... yes
  Use system proxies ..... no
...
  SQL drivers: 
    DB2 .................. no
    InterBase ............ no
    MySQL ................ yes (plugin)
    OCI .................. no
    ODBC ................. no
    PostgreSQL ........... yes (plugin)
    SQLite 2 ............. no
    SQLite ............... yes (plugin, using bundled copy)
    TDS .................. no
  tslib .................. no
  udev ................... yes
  xkbcommon-x11........... yes (bundled copy, XKB config root: /usr/share/X11/xkb)
  xkbcommon-evdev......... yes
  zlib ................... yes (system library)


Qt 现在已配置好用于构建。 只需运行“制作”。
一切构建完成后,您必须运行“make install”。
Qt 将被安装到 /usr/local/qt5

在重新配置之前,请确保您从
以前的构建。

这是配置脚本的部分输出。输出告诉我们准备构建哪些组件。例如,将为 MySQL 和 PostgreSQL 创建 SQL 驱动程序,但不会为 DB2 或 InterBase 创建。

$make


我们使用 make 命令开始构建过程。 Qt 工具包的构建可能需要几个小时;这取决于处理器的能力。

最后一步是安装或将文件移动到目录。

$ sudo make install


此命令完成安装过程。该库现在安装在 /usr/local/qt5/ 目录中。

我们做的最后一件事是将 Qt5 路径添加到 PATH 系统变量。 bash 用户需要编辑 .profile 文件或 .bashrc 文件。

$PATH=/usr/local/qt5/bin:$PATH


$ 导出路径
我们在PATH环境变量中添加了Qt5库的bin目录路径。更改将在另一次登录后生效。

从包安装
从包中安装 Qt 更容易。 Linux 软件包通常不包含最新的 Qt 版本。

$ sudo apt-get install qt5-default
上面的命令在基于 Debian 的 Linux 上安装 Qt5。

Qt5版本示例
我们的第一个程序打印 Qt5 库的版本。

//version.cpp

#include <QtCore>
#include <iostream>

int main() {
    
    std::cout << "Qt version: " << qVersion() << std::endl;
}

 qVersion 函数以字符串的形式返回 Qt 在运行时的版本号。

$ g++ -o version version.cpp -I/usr/include/x86_64-linux-gnu/qt5/QtCore \
     -I/usr/include/x86_64-linux-gnu/qt5 -L/usr/lib/qt5 -lQt5Core -fPIC
上面的命令编译了示例。 请注意,您的 Qt5 库可能安装在不同的位置。

$ ./version 
Qt version: 5.14.2


本教程中使用的 Qt5 库版本为 5.14.2。

测试一个小的 GUI 示例


最后,我们编写一个小应用程序。 该应用程序由一个普通窗口组成。

//simple.cpp
#include <QApplication>
#include <QWidget>

int main(int argc, char *argv[]) {
    
    QApplication app(argc, argv);

    QWidget window;

    window.resize(250, 150);
    window.setWindowTitle("Simple example");
    window.show();

    return app.exec();
}

要构建此示例,我们使用 qmake 工具。

$ qmake -project


此命令创建一个项目文件,其扩展名为 .pro。

simple.pro
######################################################################
# Automatically generated by qmake (3.1) Mon Nov 30 13:42:14 2020
######################################################################

TEMPLATE = app
TARGET = simple
INCLUDEPATH += .

# Input
SOURCES += simple.cpp

QT += widgets

默认情况下,Qt Widgets 模块不包含在项目中。 因此,我们在文件末尾添加模块。

$ qmake
$ make


我们使用上述命令构建程序。 qmake 创建一个 Makefile,make 命令构建程序。

如果 Qt5 安装目录不是 PATH 变量的一部分,我们可以提供 qmake 工具的完整路径。

$ /usr/local/qt5/bin/qmake -project
$ /usr/local/qt5/bin/qmake
$ make

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值