【问题标题】:Brand new Mac, should I use Macports?全新的 Mac,我应该使用 Macports 吗?
【发布时间】:2009-10-11 01:25:18
【问题描述】:

有一个新的 mac,需要为开发做好准备。我听说了关于 macports 的好消息,我应该使用它吗?真的比手动下载编译简单吗?有人使用它有什么问题吗?

它适用于典型的 ruby​​ Web 开发。

谢谢

【问题讨论】:

    标签: macos macports package-managers


    【解决方案1】:

    试试homebrew。非常好,因为它经过高度优化,没有多余的包。

    它也是用 Ruby 构建的,这对你来说似乎特别重要。

    【讨论】:

      【解决方案2】:

      这确实比手动操作更容易。例如:

      sudo 端口安装 gimp

      将下载、构建和安装 Gimp,加上它的所有依赖项。有很多 个依赖项。

      如果你正在做“典型”的东西,MacPorts 中的东西版本就足够了。只有当您需要处于最前沿时,您才需要绕过 MacPorts 并手动下载和安装。

      【讨论】:

      • 糟糕的例子——当我尝试在一台新机器上安装 gimp 时,它只是挂起计算依赖项(显然,当你丢失很多依赖项时,它的依赖项检查算法效率很低)。解决办法是先安装它的主要依赖,比如glib,然后再安装gimp。
      • 我还没有看到这个问题。但是很可能当我安装 gimp 时,我已经从以前的运行中安装了许多依赖项。
      【解决方案3】:

      虽然 macports 可以使安装更容易,但它是 4 个命令(wget/tar/configure/make)和 1 个命令之间的区别。 macports 真正的亮点在于包管理。如果您主要对 Ruby 开发感兴趣,那么 RubyGems 可能就是您所需要的。如果您正在使用 Ruby on Rails,macports 将对您需要的所有非 ruby​​ 软件非常有帮助。如果你想完全使用 GUI,你可以使用 Porticus 作为 macports 前端。

      我在构建阶段偶尔会遇到问题,但那是在 Tiger 的领导下,落后于时代。

      【讨论】:

      • 不幸的是,这并不容易。除非您对其进行大量修补,否则大多数东西都无法编译。 Macports 不仅执行 wget/tar/configure/make 步骤。它还根据您想要的变化为您的平台进行修补和特殊配置。截至今天,Macports 是我所知道的唯一一个为 Snow Leopard 提供体面支持的公司(fink 没有)。
      • 关于补丁的要点。在 6221 个端口中,macports 提供了 1498 的补丁(我没有考虑必须下载的补丁)。对于每个包,我们发现平均更改了 108 行(通过补丁添加或删除,其中更改一行计为 2 次更改),中位数为 26 行更改,众数为 2。标准差为 1426。 line change counts 有很长的尾巴。如果将尾部定义为 4 个或更少包发生的换行计数,则尾部为换行计数的 7/10。
      • 我只是很少下载需要打补丁的东西,但偶尔依赖确实让人头疼。
      【解决方案4】:

      我更喜欢 macports,但有些人喜欢自己做。 Macports 往往落后于发布,但它仍然对我有好处

      【讨论】:

        【解决方案5】:

        macports 最大的问题是它不是跨平台的,并且很难指定一个明确定义的开发场景(例如,您使用 Foo 版本 1.2.3、Bar 版本 0.5.6 等)。它让你的生活更轻松,但到今天为止,我仍然没有找到一个体面的解决方案来定义和构建高效、简单和跨平台的开发运行时环境。另见this question

        所以我的建议是:使用 macports,除非你想非常严格地控制你的开发环境。

        【讨论】:

          【解决方案6】:

          应该使用包管理器,除非您有明确的明确理由不这样做。

          '当然,我更喜欢fink

          【讨论】:

            猜你喜欢
            • 2021-05-12
            • 2013-11-06
            • 2011-06-25
            • 2010-10-21
            • 2014-04-04
            • 2010-09-07
            • 2022-01-06
            • 2011-12-26
            • 2021-12-10
            相关资源
            最近更新 更多