如何为我的二进制文件创建 .pkg mac 安装程序?

问题描述 投票:0回答:1

我有一个二进制文件,

foo
。使用 vercel/pkg 构建。

我想将其捆绑到 Mac 的安装程序中;

.pkg
安装程序文件。

它应该将二进制文件安装在

/usr/local/bin/foo
中。

尝试:

$ cd Desktop // <--- foo binary is here
$ pkgbuild --identifier com.foo.pkg --install-location ./usr/local/bin/ --root ./ foo.pkg

这会在我的桌面上创建一个 .pkg 文件:

foo.pkg
。当我运行
foo.pkg
时,它会正确安装
foo
中的
/usr/local/bin
二进制文件,除了它还会将
foo.pkg
留在
/usr/local/bin
中。

怎样才能让

pkgbuild
避免将
foo.pkg
留在
/usr/local/bin
里面?

macos vercel xcodebuild pkgbuild xar
1个回答
3
投票

当您通过

--root
时,它会获取该文件夹中的所有内容并将其烘焙到包中。您正在正在构建的根目录中运行
pkgbuild
- 桌面上很可能有
foo.pkg
的副本,该副本是由早期运行
pkgbuild
创建的。当您再次运行它时,旧的
foo.pkg
现在已内置到新包中。

相反,将

--root
指向包含您要打包的文件的目录 only

否则,请使用

--analyze
生成根目录的组件列表。根据需要自定义生成的 .plist(指定要包含的文件和关联选项),然后使用
pkgbuild
将其反馈回
--component-plist

如果您还没有阅读过手册页,您应该阅读一下。

© www.soinside.com 2019 - 2024. All rights reserved.