Was ist MacPorts?

Also, ich habe die Dokumentation zu Macports gelesen. Wie beschrieben:

MacPorts ist ein benutzerfreundliches System zum Kompilieren, Installieren und Verwalten von Open-Source-Software. MacPorts können konzeptionell in zwei Hauptteile unterteilt werden: die Infrastruktur, die als MacPorts-Basis bekannt ist, und die Menge verfügbarer Ports. Ein MacPorts-Port ist eine Reihe von Spezifikationen, die in einer Portdatei enthalten sind, die eine Anwendung, ihre Eigenschaften und alle Dateien oder speziellen Anweisungen, die zu ihrer Installation erforderlich sind, definiert. Auf diese Weise können Sie mit einem einzigen Befehl MacPorts anweisen, Anwendungen und Bibliotheken automatisch herunterzuladen, zu kompilieren und zu installieren. Die Verwendung von MacPorts zur Verwaltung Ihrer Open-Source-Software bietet jedoch mehrere andere bedeutende Vorteile.

Das meiste davon geht direkt über meinen Kopf. Ich nehme an, ich bin nicht computerkundig genug, um den Zweck zu verstehen. Kann mir jemand eine einfache Erklärung (für einen durchschnittlichen und nicht für einen „Super“-Benutzer) der folgenden Fragen geben:

  • Wofür wird Macports verwendet? Können Sie mir ein konkretes Beispiel geben?
  • Wie hängt es mit "X11" zusammen?

Wenn die Antwort einfach lautet: „Sie müssen diese Begriffe verstehen, um zu verstehen, was Macport ist“, dann ist das in Ordnung. Danke dir.

Antworten (1)

Macports ist ein Tool zum Installieren von Anwendungen und Befehlszeilentools auf Ihrem Mac mit einer riesigen Bibliothek von „Ports“ (der Begriff Macports für etwas, das installiert werden kann). Sie verwenden es in Terminal.app wie folgt:

$ sudo port install nmap

Um diesen Befehl aufzuschlüsseln:

  1. Das $am Anfang bedeutet im Allgemeinen, dass Sie den Rest der Zeile in Terminal eingeben müssen. In der offiziellen Dokumentation ist es ein %%, aber beide bedeuten dasselbe; Fügen Sie diesen Teil nicht ein oder geben Sie ihn ein, sondern nur den Befehl danach. Sie sehen das $Recht vor Ihrem Cursor im Terminal.
  2. sudoDies bedeutet, dass Sie dies als „Root-Benutzer“ tun, der (fast) alles mit Ihrem System machen kann. Seien Sie sehr vorsichtig, wenn Sie es verwenden. Es funktioniert nur, wenn Sie ein Administrator sind und Ihr Passwort eingeben müssen.
  3. portist der Name des Macports-Befehls selbst.
  4. installist ein Argument (auch bekannt als Befehlszeilenoption) für den portBefehl. Dies wird möglicherweise als „Unterbefehl“ bezeichnet, was daran liegt, dass Sie portallgemein sagen, was zu tun ist, anstatt etwas Bestimmtes wie den Namen dessen, was Sie installieren möchten, anzugeben. Argumente werden durch Leerzeichen getrennt.
  5. nmapist der Name des zu installierenden Programms. Es ist ein weiteres Befehlszeilentool, und Sie verwenden es für Dinge wie das Scannen von Ports.

Dieser Befehl verwendet also portdas installTool nmap. Möglicherweise installieren Sie häufiger Dinge, die echte Fenster und eine GUI haben, und hier kommt X11 ins Spiel.

X11

Das X Window System ist ein System, das verwendet wird, um Fenster, Steuerelemente und UI-Elemente im Allgemeinen anzuzeigen. Das XQuartz-Projekt ist eine Implementierung des X Window Systems auf Mac OS X. Es ist eine Anwendung, die alle Fenster von Apps anzeigt, die X11 verwenden. Normalerweise ist X11 der einfachste Weg, um etwas zu erstellen, das sowohl unter OS X als auch unter Linux ohne zusätzlichen Code verwendet werden kann, weshalb Sie viele Macports-„Portierungen“ sehen werden, die es verwenden.


Es ist manchmal schwierig, die endgültigen „Binärdateien“ mit der Quelle synchron zu halten, weshalb einige Dinge auf Ihrem Computer kompiliert (von der Quelle in eine lauffähige Datei/Anwendung umgewandelt) werden müssen.

Unter der Haube ist es wirklich kompliziert, aber der Punkt ist, dass die Leute all diese Dinge automatisch erledigen können (mit ein wenig Wissen über Terminal und Unix), ohne sich darum kümmern zu müssen. Der „Portfile“-Teil von dem, was Sie zitiert haben, ist nur der Eintrag in der Macports-Datenbank, der alles erklärt, was Macports tun muss, um etwas zu installieren. Das heißt, es könnte ein Skript sein, das Sie in Terminal oder einem anderen Programm ausführen könnten, aber der Punkt ist, es so zu gestalten, dass Sie keine harte Arbeit leisten müssen.

Derzeit ist Homebrew eine beliebtere Alternative zu Macports, aber es hat nicht so viele Fensteranwendungen (X11). Diese Art von Dingen werden normalerweise als Paketmanager bezeichnet.

Dies ist eine perfekte Antwort. Buchstäblich genau das, wonach ich gesucht habe. Danke dir!
MacPorts installiert nicht nur Software, es erstellt Software aus dem Quellcode, verfolgt die zum Erstellen des Codes erforderlichen Abhängigkeiten, aktualisiert die gesamte Software, mit der es arbeitet, einschließlich sich selbst, und verwaltet sich selbst und die gesamte Software, die es erstellt. Es kann auch vorgefertigte Binärdateien installieren, wenn Sie es dazu auffordern. MacPorts ist nichts weniger als Bienenknie und alles, was Pseudo-Paketmanager wie der Mac- und iOS-App-Store hätten sein sollen und sind es leider nicht. Homebrew hat ähnliche Ziele wie MacPorts, ist aber noch lange nicht in der Nähe davon. MacPorts ist ausgereift, stabil, vollständig und funktioniert einfach.
Dies ist eine großartige Antwort.