2

我想知道如何忽略升级某些端口或将它们取消标记为“过时”。

这是由于某些端口未能升级,而我希望升级所有其他端口。我知道sudo port install -n,它允许在不升级端口依赖项的情况下安装端口,就像在mongodb需要较旧(不是当前)版本的boost库的情况下一样,但这在这里不适用。

例如:

$ sudo port list outdated
gdb                            @7.5            devel/gdb
py27-scikits-image             @0.7.1          python/py-scikits-image

由于gdb@7.5无法更新,我只想升级其他的,即。py27-scikits-image,而无需通过整个sudo port list outdated | awk '{print $1}' | grep -v gdb | xargs sudo port upgrade管道。

非常感激。

4

1 回答 1

4

我建议为 gdb 创建一个版本号较低的本地端口文件。

  1. 创建本地 portfile 存储库:howto
  2. 将 gdb portfile 目录(一个名为“gdb”的目录包含文件“Portfile”和目录“files”)复制到本地 portfile 存储库
  3. 将端口文件中的版本号更改为例如 0.0
  4. portindex在本地 portfile 存储库中运行

本地端口文件覆盖从默认端口存储库下载的文件。低版本号使 macports 认为您的 gdb 版本是最新的。

我希望这会有所帮助。

顺便说一句:你可以做sudo port upgrade outdated and not gdb

于 2012-10-24T16:30:51.977 回答