1.Qt程序的发布
当Qt程序编撰完成通过IDE编译就可以得到对应的可执行程序,这个可执行程序在本地运行是完全没有问题的(由于在本地有Qt环境,程序运行过程中可以加载到相关的动态库),而且假如我们想把这个Qt程序给到其他男子伴使用可能还会出问题了,诱因如下:
这个小伙子伴本地根本没有Qt开发环境这个小伙子伴本地有Qt开发环境,并且和我们使用的版本不一致这个小伙子伴本地有Qt开发环境而且使用的版本与我们一致,而且没有配置环境变量
以上几种情况就会造成我们的男子伴领到可执行程序以后难以运行,下边来给你们讲一下解决方案。
1.1生成Release版程序
在编撰Qt程序的时侯,不管我们使用的哪些样的IDE都可以进行编译版本的切换,假如要发布程序须要切换为Release版本(Debug为调试版本),编译器会对生成的Release版可执行程序进行优化,生成的可执行程序会更小。这儿以QtCreator为例,截图如下:
模式选择完毕以后开始建立当前项目,最后找到生成的带Release后缀的建立目录,如右图所示:
进图到release目录中,在上面能够找到我们要的可执行程序了
1.2发布
生成的可执行程序在运行的时侯须要加载相关的Qt库文件,因而须要将这种动态库一并发布给使用者linux环境qt程序打包发布,Qt官方给我们提供了相关的发布工具,通过这个工具就可以十分轻松的找出这种动态库文件了,这个工具称作windeployqt.exe,该文件坐落Qt安装目录的编译套件目录的bin目录中,以我本地为例:C:Qt5.15.2mingw81_64bin。
假如早已将这个路径设置到环境变量中了,这么在当前操作系统的任意目录下都可以访问windeployqt.exe
晓得Qt提供的这个工具以后就可以继续向上进行了,首先将生成的Release版本的可执行程序放在一个新建的空目录中:
步入到这个目录,按住鼠标shift键之后键盘右键就可以弹出一个右键菜单
打开Powershell窗口执行命令:
1
2
3
LordCard.exe 是可执行程序的名字
windeployqt.exe 的后缀 .exe 可以省略不写
windeployqt.exe LordCard.exe
这样LordCard.exe须要的动态库会被全部拷贝到当前的目录中,如右图:
使用这些方法Qt会将一些用不到的动态库也拷贝到当前的目录中,假如确定用不到可以自动将其删掉,假若不在乎那些,完全可以不用理会,我选择前者。
如今一个红色免安装版的程序就得到了,可以将这个目录打个压缩包发送给自己的男子伴,而且这些方法终究比较low,我们可以将这个目录中的文件制做成一个安装包,这样档次一下就起来了。
2.Qt程序打包
将应用程序和相关的动态库打包成安装包的工具有好多,我自己用过两个一个是NISEdit,一个是InnoSetup这是一个免费的Windows安装程序制做软件,精巧、简便、精美。
官方下载地址:
虽然这两个工具的使用方式是几乎一样的,下边拿InnoSetup使用举例。
第一步:创建一个带向导的脚本文件
第二步:直接Next,不要创建空的脚本文件
第三步:填写相关的应用程序信息
第四步:指定应用程序的安装目录相关的信息
第五步:选择可执行程序和相关的动态库,此处参考的是前面的1.2章节中的目录
基于这个目录选择相关的文件和目录:
因为可执行程序关系的动态库有好多,所以可以直接添加动态库的目录,选中对应的目录以后,假如里面还有子目录会弹出如下对话框linux伊甸园,选择是即可,须要包含那些子目录。
第六步:给可执行程序关联本地的某种格式的c盘文件(例如记事本程序会手动关联本地的.txt文件),对于我的可执行程序来说无需关联,因而没有做任何设置,直接下一步
第七步:给应用程序创建快捷方法,此处没有进行任何设置,使用的默认选项
第八步:指定许可文件linux vps,文件中的内容会显示到安装向导的相关窗口中linux环境qt程序打包发布,可以选择不指定,直接跳过。
第九步:选择安装模式(给系统的当前用户安装还是给所有用户安装),按照自己喜好指定即可
第十步:选择安装语言(这个工具没有提供英文,因而只能选择英语)
第十一步:指定安装包文件的相关信息
第十二步:向导结束,总算结束了。。。
第十三步:提示是否要编译生成的脚本文件,脚本编译完成以后,安装包就生成了。
然后弹出第二个对话框,建议通过向导生成的这个脚本文件,这样之后就可以直接基于这个脚本打包程序生成安装包了。
编译完成以后,就可以去保存脚本文件的目录找生成的安装文件了
3.安装
双击生成的安装包文件
输入安装密码
指定安装路径
指定是否创建快捷方法
开始安装应用程序
安装完成,可以指定直接启动安装的应用程序
最后启动游戏测试下是否可以运行
大功告成!!!