macOS packages安装时的降级处理

一、降级安装

在制作macOS的pkg安装包时,一般新发布的程序版本会比旧版本更高。但是有的时候我们也希望在安装的时候,对程序的某些依赖库进行降级安装。比如高版本依赖库中出现了一些Bug,使用旧版本的依赖库暂时修复Bug。这个时候我们自然会想到需要进行降级安装。我们使用packages来制作降级安装包时,需要勾选downgrade选项。如下所示:

macOS packages安装时的降级处理

根据packages官网的说明,bundle类型的文件都是可以设置downgrade选项的,这个背景。我们的项目中恰好有这样一个需求。由于旧版本使用的Qt5.10依赖库与外部程序冲突,需要降级到5.8.0来与之兼容。实际操作时发现,在覆盖安装时旧版本的Qt库因为版本较高,无法覆盖成功。开始不知道有这么个选项,是因为UI隐藏比较深。由于我们的程序是一个Bundle类型的文件,所有的资源和依赖库文件都打包进来了。因此在packages里面选择的时候,它内部的文件结构并没有展开:

macOS packages安装时的降级处理

这个时候需要一层一层的展开,直到Qt依赖库所在的文件夹:

macOS packages安装时的降级处理

macOS packages安装时的降级处理

这个时候再选中任意一个Qt依赖库,便可以看到右边UI选项显示了出来。勾选上即可!

macOS packages安装时的降级处理

二、自定义安装

在使用packages制作安装包时,有时候一个安装包里面包含了多个安装组件,而每一个安装组件需要安装释放到不同的位。这个时候需要选择下面这个选项,不然的话不会出现多个安装组件的选项:

macOS packages安装时的降级处理

三、参考链接

1. http://s.sudre.free.fr/Software/Packages/about.html

上一篇:【Android - 自定义View】之自定义View浅析


下一篇:【SPL标准库专题(3)】 Classes