Как я могу игнорировать / снять пометку с определенных портов?


Я хотел бы знать, как игнорировать обновление некоторых портов или снять с них пометку "устаревшие".

Это вызвано тем, что некоторые порты не удалось обновить, в то время как я хочу обновить все остальные. Я знаю о 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 не удается обновить, I хотелось бы просто обновить остальные, т. е. py27-scikits-image, не проходя через весь трубопровод sudo port list outdated | awk '{print $1}' | grep -v gdb | xargs sudo port upgrade.

Весьма признателен.

1 2

1 ответ:

Я бы посоветовал создать локальный файл порта для gdb с меньшим номером версии.

  1. Создайте локальный репозиторий файлов портов: howto
  2. скопируйте каталог GDB portfile (каталог под названием "gdb", содержащий файл "Portfile" и каталог "files") в локальный репозиторий portfile
  3. измените номер версии в файле порта, например, на 0.0
  4. запустите portindex в локальном хранилище файлов портов

Локальный файл порта переопределяет загруженный файл. из хранилища портов по умолчанию. Низкое количество версии системы MacPorts думаю, что ваша версия GDB является актуальной.

Я надеюсь, что это может помочь.

Кстати: вы можете сделать sudo port upgrade outdated and not gdb