在mac下,qt自动化打包、签名、dmg安装包生成、公证

在mac下,qt自动化打包、签名、dmg安装包生成、公证,第1张

查看appdmg具体安装方法衡慧州及配置说明

公证需要 codesign 的时候加上 -o runtime 参数,加上了此参数,就需要给app赋予权限,否则会导致运行时的崩咐蔽溃。 chai.entitlements 就是权限的描述文件

查看chai.entitlements权限说明

如果不清楚里面具体的含义,建议把上述的配碧唤置文件的权限如数加上,减少不必要的问题。其他权限可以根据需求来定

查看 dmg.json 参数说明

identityId 获取方法,执行 xcrun altool --list-providers -u "$notarizationUser" -p "$notarizationPasswd" 即可获取

方法一:解决跨设备无库文件,exe无法正常运行的问题。

1、Qt程序采用release方式编译发布;拷贝".exe"目录整个文件夹

2、以管理员方式大携 运行QT命名行 (电脑桌面->开始->搜QT->进编译器) "Qt 5.9.9 (MSVC 2017 64-bit)",

3、 cd /滚羡伏d (+)".exe"跟目录文件路径     例如:cd /d C:\Users\86131\Desktop\release  ,定位至exe文件目录。

3、 windeployqt (+)”.exe“的程序名称     例如:windeployqt rtpPlayer.exe   ,自动将应用所需的库添加至.exe文件中。

拷贝此文件夹全部内容至其他设备,exe文件可直接正常运行。

方法二:打包成一个exe文件。

1、按方法一先添加好全部库文件。

2、运行"Enigma Virtual Box"软件,

①选择exe文件路径;

②设置打包后的exe文件的保存路径;

③将所有文件全选后拖拽至列表"add Folder Recursive"整个文件夹(可直接打开含库文件的release文件夹,全选文件夹内所有文件,拖拽至"Enigma Virtual Box"软件文件列表)

④建议压缩后执行。执行完成后会在相应路径生成打包好的exe文件,如过派樱库文件齐全、压缩步骤正确,即可在不同设备上正常运行打包后的exe程序。

在发布自己的程序时,很多时候都会因为一些依赖的dll文件不存在而报错,而我们新手却不知道应该如何添加,那么我们可以使用QT自带命令行来自动添加依赖文件。

命令行指令:windeployqt *.exe

首先,将你需要打包的exe文件单独放在一个文件夹中,然后打开QT自带的命令行,找到那个文件夹,之后就可以使用windeployqt加上exe文件来自动打包了,QT会自动帮你添加好全部的依赖文件,保证100%能运行,但是需要注意的是,友弯拆由于这个100%的保证,他也许添加了很多无闹银用的dll文件,这好枣会使得我们自动打包出来的文件很臃肿,所有有经验的各位可以按需要自行删除不必要文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12564750.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存