web-dev-qa-db-ja.com

MacOSのLinux UbuntuでDMGファイルを作成する方法

MacOS用のLinuxでプログラムをクロスコンパイルしましたが、そのMacOSバイナリをMacOS用のDMGファイルに変換したいと思います。

Linux(Ubuntu)上のMacOSバイナリをMacOS用のDMGファイルに変換する方法はありますか?

Ubuntuでこれを行うにはいくつかの方法があります。ここでは、Ubuntu 18.04でテストし、同僚のMacOSコンピューターで結果のdmgファイルをテストした1つの手法について説明します。オンラインで提案されているいくつかのテクニックのうち、私はこれがより良い選択だと思います!

従うべき少数の比較的簡単なステップがあります:

  1. 一部のアプリケーションをインストールします:まず、HFS +ファイルシステム用のAppleのオープンソースツールの移植版であるhfsprogsをインストールする必要があります。

    Sudo apt-get install hfsprogs
    

    これにより、AppleのHFS +ファイルシステムを操作するために必要なツールが提供されます。

  2. HFS +ファイルを作成します:次に、16MBのdmgファイルを作成し、次の2つのコマンドラインで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での展開とテストの準備が整いました。

参照:

2
andrew.46