当我不使用任何 GUI 库时,为什么我的 Qt 应用程序需要 libQt5Gui.so.5?

Why does my Qt app need libQt5Gui.so.5 when I don't use any GUI libs?

我有几个 qt 应用程序,据我所知,none 其中使用了 GUI 元素。但是,其中一个在我部署时需要 libQt5Gui.so.5 库。

这个项目的主要区别在于我使用了一些多媒体库:

#include <QAudioOutput>
#include <QAudioFormat>
#include <QAudioDeviceInfo>

该项目的 pro 文件如下所示(我明确删除了 gui 库):

QT       += core
QT       += network
QT       += multimedia
QT       += xml
QT       -= gui

TARGET    = Rpe
CONFIG   += console
CONFIG   -= app_bundle
TEMPLATE  = app

另一个不需要 libQt5Gui.so.5 的 pro 文件如下所示:

QT       += core
QT       += network
QT       += xml
QT       -= gui

TARGET    = Mvp
CONFIG   += console
CONFIG   -= app_bundle
TEMPLATE  = app

这是否意味着多媒体需要 gui 库?

Does this mean that multimedia requires the gui libraries?

正好

它使用基本的 GUI 类,例如:QImageQMovieQFontQColor、...

当然还有来自 Gui 模块的许多其他内容。