【发布时间】:2011-01-18 18:50:29
【问题描述】:
我有一个共享库(没有 QT 依赖项)[库 B],它链接到另一个共享库(也没有 QT 依赖项)[库 A]。
我正在使用 Qmake 和 QT Creator 1.3。问题是,当我构建库 B 并在可执行文件上运行 ldd 时,它被链接到 QtCore 和 QtGui,两者都拉入了大量不需要的文件,导致可执行文件加载时间很长,并且有不需要的文件依赖关系。
我已经尝试了几乎所有方法来阻止 qmake 将这些库链接到库 B。
我的库 B 项目文件的 sn-p 如下所示:
TEMPLATE = lib
LIBS += -L../datelib/bin -ldatelib_release
QT -= gui core
LIBS -= -lQtGui -lQtCore
CONFIG += dll
CONFIG += debug_and_release
CONFIG(debug, debug|release) {
TARGET =targetnameD
}else {
TARGET = targetname
}
我在 Ubuntu 9.10 上使用 QtCreator 3
QT 是 4.5.2 版
【问题讨论】:
-
哪个版本的 Qt?我尝试使用 4.6.1 和 Qt -= core gui 由 qmake 创建的 Makefile 不包含 Qt DLL,删除此行将它们包含在 Makefile 中。