我有一个共享库(没有QT依赖)[库B]链接到另一个共享库(也没有QT依赖)[库A] .
我正在使用Qmake和QT Creator 1.3 . 问题是当我构建库B并在可执行文件上运行ldd时,它被链接到QtCore和QtGui,这两者都会引入大量不需要的文件,导致可执行文件需要很长时间才能加载,并且有不必要的依赖 .
我已经尝试了几乎所有东西来阻止qmake将这些库链接到库B.
库B的项目文件片段如下所示:
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版
5 回答
对于应用,您可以这样做:
更多信息:qmake common projects
我有类似的问题 . 我所做的是用qtcore和qtgui创建新的库项目 . 删除了向导创建的所有不必要的文件 . 将我的文件添加到项目文件夹并修改了* .pro文件 . 它开始正常工作 .
这是QtCreator的一些问题,它没有正确读取.pro文件生成.pro.user,使用QtCreator构建,向导生成正确的.pro.user文件 .
我用Qt 4.7做到了这一点
希望得到这个帮助 .
将
CONFIG -= qt
放在.pro文件中 .你可以试试
据我所知,如果您没有将它们与IDE分开设置,Qt创建者不会考虑.pro配置 .
您应该转到项目的设置,克隆调试配置,重命名它,将QMake构建配置设置为release(!)并根据需要更改其他设置 . 然后,您可以从IDE中选择要构建的配置 .
P.S:尝试使用Qt Creator 1.3.1,因为它修复了很多错误并带来了有趣的新功能 .