如何在 Linux Ubuntu 上为 MacOS 创建 DMG 文件

如何在 Linux Ubuntu 上为 MacOS 创建 DMG 文件

我在 Linux 上为 MacOS 交叉编译了一个程序,现在我想将该 MacOS 二进制文件转换为 MacOS 的 DMG 文件。

有没有办法将 Linux(Ubuntu)上的 MacOS 二进制文件转换为 MacOS 的 DMG 文件?

答案1

一些在 Ubuntu 下可以实现此目的的方法,我在此描述了一种我在 Ubuntu 18.04 上测试过的技术,并在同事的 MacOS 计算机上测试了生成的 dmg 文件。在网上建议的几种技术中,我相信这是更好的选择!

只有少数相对地简单易懂的步骤如下:

  1. 安装一些应用程序:首先,您需要安装hfsprogsApple 针对 HFS+ 文件系统的开源工具的端口:

    sudo apt-get install hfsprogs
    

    这将提供与 Apple 的 HFS+ 文件系统配合使用的必要工具。

  2. 创建 HFS+ 文件:接下来,您将创建一个 16MB 的 dmg 文件,并使用以下两个命令行将其格式化为 HFS+:

    dd if=/dev/zero of=/tmp/my_application.dmg bs=1M count=16 status=progress
    mkfs.hfsplus -v Install /tmp/my_application.dmg
    

    这里有几个变量需要您注意:您可以改变它count=16来反映您需要的 dmg 文件的大小,您还可以改变这里给出的卷标-v Install

  3. 挂载文件,复制你的程序:现在您可以创建一个挂载点,将您的 dmg 文件挂载在那里,将您的程序文件复制到已挂载的 dmg 文件中,然后将其全部卸载:

    mkdir -pv /mnt/tmp
    sudo mount -o loop /tmp/my_application.dmg /mnt/tmp
    sudo cp -av my_program /mnt/tmp
    sudo umount /mnt/tmp
    

    这里要改变的变量当然是实际名称您在命令中的应用程序cp,我上面已经给出了简单的my_program

现在,您完成的 dmg 文件已准备/tmp/my_application.dmg好在 MacOS 上部署和测试!

参考:

相关内容