《Qt入门(三)-- pro文件集合windeployqt打包方法》

使用QtCreater编译完自动打包软件的依赖

背景

网上介绍Qt 打包发布时,传统的操作步骤如下
1、 拷贝release文件下的xxx.exe文件到单独的目录中
2 、使用msvc工具进入文件目录执行windeployqt xxx.exe 在这里插入图片描述
3 、双击运行xxx.exe
这种打包方式也没啥问题,但刚好遇到更简便的方法,顺便记录一下

一 、pro文件设置配置

创建个pri文件,然后在里面填写上如下代码,再到pro文件里面设置一下,就可以在编译后,直接打包,不用再自己二次打包发布了 贴个pri文件链接,代码和下面一样不用额外下载只是额外介绍了一点后缀

contains(CONFIG, static){
    # 静态版本不需要部署
}else{
    win32 { # 使用与Windows系统的软件配置部署
        DEPLOY_TOOL = $${dirname(QMAKE_QMAKE)}/windeployqt
        DEPLOY_TOOL = $$replace(DEPLOY_TOOL, /, \\)

        contains(CONFIG, debug, debug|release){
            DEPLOY_TARGET = $${OUT_PWD}/debug/$${TARGET}.exe
        }else{
            DEPLOY_TARGET = $${OUT_PWD}/release/$${TARGET}.exe
        }

        DEPLOY_TARGET=$$replace(DEPLOY_TARGET, /, \\)
        msvc {
            QMAKE_POST_LINK+=$$DEPLOY_TOOL $$DEPLOY_TARGET --force --no-translations $$escape_expand(\\n)
            message("cmd is $${QMAKE_POST_LINK}")
        }else{
            QMAKE_POST_LINK+=$$DEPLOY_TOOL $$DEPLOY_TARGET --force --no-translations
        }
    }
}

2、遇到的问题

1、 大部分使用复制exe打包时的可能会遇到
Warnning
warning:Cannot find Visual Studio installation directory,VCINSTALLDIR is not set.

只需要设置环境变量VCINSTALLDIR的值为VS目录,比如我的C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC
即可
2、本人在使用pro文件自动打包时遇到了,编译完后提示打包的路径出错。
在这里插入图片描述

我也是一脸懵逼,实际去查看系统环境变量时又都正确,使用复制到外面的打包方式也是正常的,没有提示VCINSTALLDIR出错
在这里插入图片描述
添加打印信息时,
在这里插入图片描述
最后经过别人指导发现
在这里插入图片描述
pro文件的右键下有三个环境变量
1、系统环境变量 System Environment
2、构造环境变量 Build Environment
3、运行环境变量 Run Environment
这时就有点意思了,在弹出的界面打入set指令时发现
系统环境变量 System Environment 如下所示是正确的
在这里插入图片描述
构造环境变量 Build Environment就有问题了,这时候就要去修改对应环境下的环境变量即可,一般这个玩意是不会有问题,我也没搞懂复制的时候哪里复制错了
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值