Пакет понижения версии в Macports

Пакет понижения версии в Macports

Я использую Macports 1.7.1 и мне не нужна последняя версия порта, так как она несовместима с некоторыми другими пакетами, которые я хочу собрать из исходного кода.

Как принудительно установить определенную версию пакета с помощью инструмента «port» macports?

решение1

Старая версия вашего программного обеспечения, вероятно, все еще доступна. Проверьте это, запустив:

port installed PACKAGE

где PACKAGE — это то, что вы хотите понизить. Это выведет список «полных» имен соответствующих портов. Вы увидите активный порт и старый, неактивный порт. Вы можете переключить их, выполнив что-то вроде этой процедуры:

port deactivate PACKAGE@CURRENT_REVISION+VARIANTS

port activate PACKAKGE@OLD_REVISION+VARIANTS

решение2

Я не думаю, что вы можете использовать более старую версию в MacPorts. Список сборки поддерживается и, похоже, не содержит много предыдущих версий, за исключением нескольких пакетов, таких как mysql. Так что, если вы это сделаете port search package, то результаты, которые он покажет, — это все, что он может сделать. В случае с mysql я вижу, что есть mysql5, 4 и 3. Если бы я хотел 4, я бы просто сделал sudo port install mysql4.

Если вашего пакета нет в списке, возможно, вам придется собрать его с нуля.

решение3

Вы можете создать дополнительный локальный репозиторий portfile для переопределения некоторых пакетов. Я использую это, чтобы заставить MacPorts использовать старую версию пакета 'screen' (есть открытая проблема с ошибками в более новых версиях).

Подробная информация о настройке приведена в руководстве MacPorts: http://guide.macports.org/#development.local-repositories

Связанный контент