Downgrade-Paket in Macports

Downgrade-Paket in Macports

Ich verwende Macports 1.7.1 und möchte nicht die neueste Portversion, da diese nicht gut mit einigen anderen Paketen funktioniert, die ich aus dem Quellcode erstellen möchte.

Wie kann ich die Installation einer bestimmten Version eines Pakets über das „Port“-Tool von MacPort erzwingen?

Antwort1

Die alte Version Ihrer Software ist wahrscheinlich noch vorhanden. Überprüfen Sie dies, indem Sie Folgendes ausführen:

port installed PACKAGE

wobei PACKAGE das ist, was Sie downgraden möchten. Dadurch werden die „vollqualifizierten“ Namen der passenden Ports aufgelistet. Sie sehen den aktiven Port und den alten, inaktiven Port. Sie können sie austauschen, indem Sie etwas Ähnliches wie dieses Verfahren durchführen:

port deactivate PACKAGE@CURRENT_REVISION+VARIANTS

port activate PACKAKGE@OLD_REVISION+VARIANTS

Antwort2

Ich glaube nicht, dass Sie in MacPorts eine ältere Version verwenden können. Die Build-Liste wird gepflegt und scheint mit Ausnahme einiger Pakete wie mysql nicht viele frühere Versionen zu enthalten. Wenn Sie also verwenden port search package, sind die angezeigten Ergebnisse alles, was es tun kann. Im Fall von mysql kann ich sehen, dass es mysql5, 4 und 3 gibt. Wenn ich 4 wollte, würde ich einfach sudo port install mysql4.

Wenn Ihr Paket nicht aufgeführt ist, müssen Sie es möglicherweise von Grund auf neu erstellen.

Antwort3

Sie können ein zusätzliches lokales Portfile-Repository erstellen, um einige Pakete zu überschreiben. Ich verwende dies, um MacPorts zu zwingen, eine ältere Version des „Screen“-Pakets zu verwenden (bei neueren Versionen besteht ein offenes Fehlerproblem).

Im MacPorts-Handbuch finden Sie Einzelheiten zur Konfiguration: http://guide.macports.org/#development.local-repositories

verwandte Informationen