Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在MacOS系统上构建RPM?_Macos_Rpm_Fink - Fatal编程技术网

如何在MacOS系统上构建RPM?

如何在MacOS系统上构建RPM?,macos,rpm,fink,Macos,Rpm,Fink,我正在运行MacOSX10.6.6。我有一些我想构建的纯数据RPM 直到最近,我在运行CentOS的VM上完成了大部分开发工作,但我已经能够将这些任务一个接一个地转移到Mac上。我一直在使用它来访问我需要的开放/免费工具,但我还没有准备好去Fink Stability,RPM5包已经在那里使用了一段时间 我还尝试从源代码构建RPM实用程序,但迄今为止运气不佳 还有人在Mac上本机构建RPM吗?如果是,怎么做?正如@user132447所指出的,您需要将驱动器重新格式化为MacOS extende

我正在运行MacOSX10.6.6。我有一些我想构建的纯数据RPM

直到最近,我在运行CentOS的VM上完成了大部分开发工作,但我已经能够将这些任务一个接一个地转移到Mac上。我一直在使用它来访问我需要的开放/免费工具,但我还没有准备好去Fink Stability,RPM5包已经在那里使用了一段时间

我还尝试从源代码构建RPM实用程序,但迄今为止运气不佳


还有人在Mac上本机构建RPM吗?如果是,怎么做?

正如@user132447所指出的,您需要将驱动器重新格式化为MacOS extended(区分大小写)

CentOS的一部分与构建不同。两者都是两个不同的项目。以后可能会在MacOS上工作,但我建议您使用仅基于RPM的VM(或单独的系统)。这肯定会为你节省长时间的修复和关心不太有用的问题


RPM.org上的RPM还不支持MacOS(我猜它是构建的-至少是最新版本),这就是CentOS使用的RPM。

我今天也遇到了同样的情况,但我只是通过首先安装MacPorts,然后从那里安装,成功地构建并运行了RPM。它需要1.8GB的下载量才能构建,因为它需要从苹果商店以1.6GB的速度安装(免费)Xcode开发者工具包,然后再安装一个140MB的命令行工具包

因此,首先,请仔细按照此处的清晰说明中的每个步骤安装MacPorts:

完成所有这些操作后,请确保运行update命令(如安装说明中所述),以便下载可用的软件端口包(如果没有,则会显示“找不到rpm”):

完成所有这些操作后,运行以下操作以获取rpm并构建它:

sudo port install rpm
在我2011年初与Lion合作的MacBook Pro上,下载所有内容并进行构建大约需要10分钟


整个过程需要一段时间,但它是有效的。祝你好运

我一直在使用它来构建基于maven的项目,这些项目创建RPM工件。

您可以使用自制软件包管理器在MacOS上安装rpmbuild

brew install rpm
这将安装一组软件包,包括用于构建rpm的rpmbuild。然后可以运行以下命令来创建rpm

rpmbuild <specfile>
rpmbuild

您尝试过DMG存档吗?5.0和5.1有一个RPM。如果5.x在OSX1.6上运行,他们只说最低要求是10.4/10.5。达尔文RPM页面上的所有链接都没有了……RPM的5.0和5.1版本的链接没有了。RPM实用程序一旦安装,就不能很好地创建RPM。显然,为了获得一个构建,需要进行一个定制的bash更改。你真的试过了吗,还是只是谷歌和post?在跟踪了一个非常奇怪的错误后,我最近了解到MacOS有一个不区分大小写(但保留大小写)的文件系统。这不足以满足我的日常需要,因此我重新使用安装了一个像样的Unix变体的VM。在您的机器上安装Mac OS X时,您可以选择将驱动器格式化为:Mac OS Extended(区分大小写,日志记录)这将提供Unix工作所需的大小写敏感度。PS:我注意到在大多数情况下不需要额外的“sudo port-v selfupdate”。。。原来是我公司的防火墙阻止了它的工作。MacPorts安装程序应自动为您执行此步骤。投票被否决,因为此答案已被另一个答案中概述的
brew安装rpm
淘汰。这应该是可接受的答案-问题现已过时,这是安装rpmBrew的最简单方法,也是处理此问题的最简单方法。这应该是公认的答案。Brew是处理此问题的最简单方法,但由于各种原因(权限、ruby版本控制、软件包版本控制等),许多macOS用户宁愿远离它。
rpmbuild <specfile>