Перенос установщика сборки PackageMaker из командной строки в pkgbuild

Я пытался портировать сборку командной строки Mac PackageMaker в pkgbuild и productbuild, но я застрял. К сожалению, я не нашел много информации о том, как работают эти новые программы, за исключением этого сообщения StackOverflow и справочных страниц pkgbuild и productbuild .

Вот моя проблема. Я создал корневой каталог установки, в котором есть следующие файлы:

/some_path/Applications
                       /MyProgram.app
          /Library
                  /Frameworks
                             /MyFramework.framework
                                                   /[library files...]

Приведенный ниже вызов командной строки прекрасно работает для PackageMaker. Он создал установщик, который установил все файлы выше.

$ /Developer/usr/bin/packagemaker \
    --title "My Program" \
    --root /some_path \
    --version 1.0.0 \
    --filter "\.DS_Store" \
    --resources./resources/ \
    --scripts./scripts/ \
    --root-volume-only \
    --domain system \
    --verbose \
    --no-relocate \
    --target 10.5 \
    --id com.my_company.pkg \
    --out MyProgram.pkg

Теперь я пытаюсь написать это с помощью pkgbuild и столкнулся с серьезной проблемой.Я использую следующий вызов:

$ pkgbuild \
    --root /some_path \
    --version 1.0.0 \
    --install-location "/" \
    --scripts "./scripts/" \
    --identifier "com.my_company.pkg" \
    MyProgram.pkg

Эта команда создает установщик, который копирует каталог MyProgram.framework в /Library/Frameworks. Однако он не устанавливает файл MyProgram.app в каталог /Applications. Когда я смотрю журналы установщика, я вижу это сообщение:

Applications/MyProgram.app relocated to /some_path/Applications/MyProgram.app

Может ли кто-нибудь пролить свет на то, почему это не добавляет файл MyProgram.app в каталог /Applications, как это делал PackageMaker?

14
задан Community 23 May 2017 в 10:28
поделиться