QT5静态编译和使用
2014-02-17 00:03
148 查看
1. QT5 静态编译
a. 下载源文件
b. 更改 qtbase\mkspecs\win32-msvc2010\qmake.conf 文件,这里win32-msvc2010是我使用的编译器,请选择你自己的;
找到文件里的下面几行,更改MD为MT表示链接静态库。
c. 执行 configure,参见《qt5配置选项》
d. 执行 nmake
e. 执行 nmake install
2. 使用QT5静态库
QT5的部署结构与QT4有了些变化,需要在程序目录下配置相应的插件(参见)。 在静态链接QT库时,
你需要通过手动的方式在代码里加入插件导入代码:
例如:
注意:这里插件的名字一定要正确,插件的名字没有找到相关的文档列表,可以通过dumpbin.exe 导出静态库的符号表,
然后通过查询来sqt_static_plugin找出导入的插件的名字。
a. 下载源文件
b. 更改 qtbase\mkspecs\win32-msvc2010\qmake.conf 文件,这里win32-msvc2010是我使用的编译器,请选择你自己的;
找到文件里的下面几行,更改MD为MT表示链接静态库。
QMAKE_CFLAGS_WARN_OFF = -W0 QMAKE_CFLAGS_RELEASE = -O2 -MT QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi QMAKE_CFLAGS_DEBUG = -Zi -MTd
c. 执行 configure,参见《qt5配置选项》
d. 执行 nmake
e. 执行 nmake install
2. 使用QT5静态库
QT5的部署结构与QT4有了些变化,需要在程序目录下配置相应的插件(参见)。 在静态链接QT库时,
你需要通过手动的方式在代码里加入插件导入代码:
#include <QtPlugin> Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin) Q_IMPORT_PLUGIN(AccessibleFactory)
例如:
#include "qtupp.h"
#include <QtWidgets/QApplication>
#include <QtPlugin> Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin) Q_IMPORT_PLUGIN(AccessibleFactory)
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
qtupp w;
w.show();
return a.exec();
}
注意:这里插件的名字一定要正确,插件的名字没有找到相关的文档列表,可以通过dumpbin.exe 导出静态库的符号表,
然后通过查询来sqt_static_plugin找出导入的插件的名字。
相关文章推荐
- 使用VC2005编译真正的静态Qt程序 good
- QT5.10开发(3) 在linux下使用编译 静态链接Qt 5.10 release版的详细过程
- vs2015静态编译Qt5.7.1及使用
- 使用VC++编译器静态编译Qt5.5
- VS2012中使用编译的Qt-5.1.1静态库开发程序
- VS2012中使用编译的Qt-5.1.1静态库开发程序
- 使用VS2012编译QT 5.2.1静态库
- 如何使用VC2005编译“真正”的静态Qt应用程序(转)
- 使用VC2005编译真正的静态Qt程序-Qt中文论坛-夏威夷雪人
- Linux下编译静态MinGW环境,编译windows平台Qt程序(使用MXE)
- 如何在 静态编译的QT 5.5.1 中 使用数据库插件连接 ODBC(调用静态插件)
- 使用VC2005编译“真正”的静态Qt应用程序
- 使用VC2005编译真正的静态Qt程序
- 如何在 静态编译的QT 5.5.1 中 使用数据库插件连接 ODBC
- 使用VC2005编译真正的静态Qt程序
- 使用VC2005编译真正的静态Qt程序
- QT5.10开发(2) 在Windows 10下使用MinGW编译 静态Qt 5.10 release版 详细过程
- 在Windows 10下使用MinGW静态编译Qt 5.9.1的详细过程(Ver 17.0819)
- 使用Vs2005 VS2008编译真正的静态Qt程序
- VS2012中使用编译的Qt-5.1.1静态库开发程序