我的工程
1.工具中需要连接数据库,所以需要保证使用本工具的的PC也要安装有MYSQL数据库
2.在环境变量中添加MYSQL的bin路径
3.工具包中需要包含
(1)boardcfg.ini的配置文件
(2)用于指定工具寻找DLL所用的qt.conf配置文件
(3)plugins\sqldrivers文件夹及里面用到的mysql的DLL(即qsqlmysql4.dll和qsqlmysqld4.dll)
(4)release版本中需包含QtCore4.dll QtGui4.dll QtNetwork4.dll QtSql4.dll MSVCP90.DLL MSVCR90.DLL 如果环境进行了编译,这些文件要用最新的
先从Windows平台开始。 Windows平台下的软件发布最主要的需求是想办法找到在你的发布中应该包含哪些必须的文件, 同时要保证应用程序运行时能正确找到这些文件, 发布基于Qt的软件也是同样的需求。 就不同的情况一一阐述:
静态链接的情况
静态链接是最简单的情况,这种情况下需要发布的文件数量是最少的, 只需要发布一个单独的执行档外加编译器相关的dll文件。 这种情况下Qt库首先要静态编译:
< [other -static>
nmake sub-src
//如果用mingw编译,nmake替换成mingw32-make
//sub-src指只编译src目录,这样省去编译examples等目录的时间
注意哦,如果你在同一个build目录用不同的configure选项去编译Qt, 必须在重新configure之前运行nmake distclean清除以前生成的目标和中间文件, 保证一个干净的编译环境,不然有可能会出一些奇怪的链接错误哦~~
编译好Qt静态库下一步再编译应用程序:
cd application_dir
nmake clean
qmake -config release
nmake
编译成功之后应该得到一个可以独立执行的exe文件, 可以将程序拷贝到其他没有安装qt的机器上测试。 需要注意的是这个程序不一定百分之百可以运行,因为编译器带的库仍然是动态编译的,如果你的目标机里没有这些库的话仍然会有运行时的问题。 后面会讲到如何用工具来检查应用程序的依赖。
静态链接方法比较重要的缺陷是无法支持插件 , 而且插件不能编译进程序中,所以插件提供的功能就丢失了。 这样一来要想用到插件的功能还是要用下面的方法。
动态