美文网首页
QT打包发布

QT打包发布

作者: 时尚灬IT男 | 来源:发表于2019-06-28 15:35 被阅读0次

    设置执行文件的图标

    图片格式需要用工具转成 .ico 格式。
    把该图片放到QT的工程目录下,也就是包含pro文件的目录。

    image.png
    打开.pro文件,在末尾添加如下代码:
    RC_ICONS = kingsun.ico # kingsun.ico是你图片的文件名

    使用QT自带工具(windeployqt )打包方法:

    1、release编译生成的程序运行正常之后,找到项目的生成目录,比如 项目源码路径:C:\Qt\helloQt\ 。
    它的项目生成目录是 C:\Qt\build-helloQt-Desktop_Qt_5_4_0_MinGW_32bit-Release\ 。
    进入这个文件夹,在进入它的子文件夹 release 里面,找到 helloQt.exe,将这个exe 复制到一个新的单独的文件夹里用于发布,比如存到 D:\helloQt\ 文件夹里面,此时打开helloQt.exe会提示缺少dll之类的信息,程序打不开。
    2、“开始”菜单中打开Qt命令行工具:


    image.png

    如:Qt 5.4 for Desktop (MinGW 4.9 32 bit)
    输入命令:cd /d D:\helloQt
    进入D:\helloQt 文件夹之后,继续输入:windeployqt helloQt.exe

    做一个可安装的执行程序

    生成可安装软件生成可安装软件
    提取码:21ic
    接下来就是这个生成可安装软件的操作步骤:

    image.png image.png
    image.png
    image.png
    image.png
    image.png
    image.png
    image.png
    image.png
    image.png
    image.png

    打包过程的程序里如果包含文件夹,在用打包好的安装程序时,每次都会把原来添加的文件夹下的文件直接装在应用程序的文件夹里。导致程序运行提示缺少文件。
    解决方法:修改iss文件

    Source: "E:\wb\DataProc-HGV1.8\dlls\*";  DestDir: "{app}\dlls"; Flags: ignoreversion recursesubdirs
    createallsubdirs
    Source: "E:\wb\DataProc-HGV1.8\help\*";  DestDir: "{app}\help"; Flags: ignoreversion recursesubdirs
    createallsubdirs
     
    Source: "E:\wb\DataProc-HGV1.8\dlls\*";  DestDir: "{app}\dlls\"; Flags: ignoreversion recursesubdirs
    createallsubdirs
    Source: "E:\wb\DataProc-HGV1.8\help\*";  DestDir: "{app}\help\"; Flags: ignoreversion recursesubdirs
    createallsubdirs
    
    

    在{app}后面加是文件夹的路径

    相关文章

      网友评论

          本文标题:QT打包发布

          本文链接:https://www.haomeiwen.com/subject/oetecctx.html