Я использую Macports 1.7.1, и мне не нужна последняя версия порта, так как она плохо сочетается с некоторыми другими пакетами, которые я хочу собрать из исходников.
Как я могу принудительно установить определенную версию пакета из инструмента «порт» macports?
Скорее всего, старая версия вашего программного обеспечения все еще существует. Проверьте это, запустив:
port installed PACKAGE
где ПАКЕТ - это то, что вы хотите понизить. Будет выведено "полное" имя совпадающих портов. Вы увидите активный порт и старый неактивный порт. Вы можете переключить их, выполнив что-то вроде этой процедуры:
port deactivate PACKAGE@CURRENT_REVISION+VARIANTS
port activate PACKAKGE@OLD_REVISION+VARIANTS
Я не думаю, что вы можете использовать старую версию в MacPorts. Список сборки поддерживается и, похоже, не содержит многих предыдущих версий, за исключением нескольких пакетов, таких как mysql. Итак, если вы это сделаете port search package
, результаты - это все, что он может. В случае mysql я вижу, что есть mysql5, 4 и 3. Если бы я хотел 4, я бы просто сделал sudo port install mysql4
.
Если вашего пакета нет в списке, возможно, вам придется собрать его с нуля.
Вы можете создать дополнительный локальный репозиторий файлов порта, чтобы переопределить некоторые пакеты. Я использую это, чтобы заставить MacPorts использовать более старую версию пакета screen (в более новых версиях есть проблема с открытой ошибкой).
В руководстве MacPorts есть подробные сведения о том, как это настроить: http://guide.macports.org/#development.local-repositories