美文网首页
程序打包教程

程序打包教程

作者: 三杯两盏淡酒2323 | 来源:发表于2018-06-07 20:26 被阅读0次

    QT5程序打包问题

    问题描述:为了方便不同电脑之间QT程序的移植,简单介绍QT5打包方式
    打包工具:QT5自带的windeployqt + Engima Virtual Box

    windeployqt 使用步骤

    • 打开一个QT程序,以release方式运行
    • 打开release生成的文件夹,找到该目录下的.exe程序。此时点击是运行不成功的。因为缺少QT必要的库文件。将这个.exe文件拷贝出来,创建一个单独的文件夹,命名为testrelease,放在这个文件夹下
    • 在win10下,搜索QT,如下图所示,打开Qt 5.5 64-bit for Desktop (MSVC 2013)


      捕获.PNG
    • 命令行进入刚刚创建的testrelease文件夹下,之后输入命令 windeployqt xxx.exe, 'xxx'代表exe的名称
      *这是我们看到程序目录如下所示


      捕获.PNG
    • 除此之外还需要将本exe运行需要的其他库拷贝到此文件夹下,这些库与程序本身有关,比如有些可能需要OpenGL的库、有些可能需要SDL的库等等。windeployqt 只是把QT工程依赖的原生库拷贝出来,并不能拷贝用户自写QT程序依赖的库函数。
    • 完成以上步骤后,点击exe可以正常运行,如果不能,则代表某些依赖库没有拷贝。

    Engima Virtual Box使用步骤

    • 完成上述步骤之后,打开Engima Virtual Box,Engima Virtual Box的下载请自行百度。


      捕获.PNG
    • 按照上图的示意,添加路径和文件如下图。文件可以托选,选择所有文件后,直接拖入界面框内。注意是要所有文件和文件夹全部拖进。示意图如下:


      捕获.PNG
    • 然后点击Process开始打包。
    • 打包完成后,就可以去程序打包后的路径点击运行了。

    优缺点分析

    • 优点:操作流程简单易行
    • 缺点:如果想在其他电脑运行此工程,需要将整个打包后的文件夹(包括exe和库)全部压缩再打包发出,不方便。

    采用NSIS打包程序

    问题描述:采用windeployqt的打包方式不够方便,接下来介绍将exe打包成软件安装包的方法
    打包工具:NSIS(Nullsoft Scriptable Install System)+NIS Edit

    打包步骤

    • 安装NSIS(Nullsoft Scriptable Install System)和 NIS Edit

    • 打开NIS Edit,点击文件,选择新建脚本:向导(W),如下图所示


      捕获.PNG
    • 点击下一步,输入应用程序名称,版本,出版人,网站等等基本信息


      捕获.PNG
    • 点击下一步,此处采用默认选项,也可做出修改,安装程序语言此处以English为例,也可选择其他


      捕获.PNG
    • 点击下一步,只需修改自定义的授权文件,可自己新建一个txt或rft文件并写入一些软件授权信息或其他信息(文件内容在安装过程中会显示出来并让用户选择接受协议),其他保留默认设置。选择下一步


      捕获.PNG
    • 这一步是最关键的。将下图中 蓝色框内的"c:\path\to\file\AppMainExe.exe", c:\path\to\file\Example.file 都删除,允许用户选择要安装的组件。最后点击上方的树形图按钮(红色框)
      [图片上传中...(捕获.PNG-41a08e-1528423949845-0)]


      1528423647(1).png
    • 点击树形目录,这里选择要发布的*.exe程序所在目录(最好将发布程序时所有用到的文件均拷贝到该目录下,都放到一个目录下),并选中"包含子目录"以及"单独添加每个文件(如果有)" ,其余保留默认设置。 然后选择确定,加载完目录下所有文件后,点击下一步


      捕获.PNG
    • 可保留默认设置,选择下一步


      捕获.PNG
    • 在图中只需要修改自定义的卸载程序图标就可以了,其他项保留默认设置,选择下一步


      捕获.PNG
    • 选择“保存脚本”,“转换文件路径到相对路径”,“编译脚本”,然后用NIS Edit进行编译,执行打包过程,最后生成成功,点击Setup.exe运行即可安装。


      捕获.PNG

    相关文章

      网友评论

          本文标题:程序打包教程

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