Was ist das offizielle Installationsprogramm für Unix-Pakete unter Mac OS?

6852
dehmann

Ich bin etwas verwirrt über die Installation von Standard-Unix-Paketen unter Mac OS X. Zum Beispiel habe ich / usr / bin / svn, das ist SVN v.1.4.4, aber FinkCommander sagt, dass svn nicht installiert ist. Gleiches gilt für andere Pakete wie Emacs etc.

Ist das nur eine falsche FinkCommander-Einstellung? Momentan ist es so eingestellt, dass alles installiert wird /sw, was nicht einmal im PATH. Also muss ich es nur einstellen, um Pakete zu installieren/usr, und die installierte Software wird erkannt? Ich möchte keine doppelten Pakete von allem installieren, und es ist ziemlich seltsam, dass der FinkCommander nicht mit der installierten Software zu synchronisieren scheint.

Oder gibt es ein anderes Installationsprogramm, das ich verwenden sollte? Ist Mac Ports das empfohlene Installationsprogramm?

(Ich verwende Mac OS 10.5.8.)

10
Gute Frage und einige großartige Antworten. Schauen Sie sich auch dieses an: http://superuser.com/questions/28529/macports-fink-etc Jonik vor 14 Jahren 0
Wie bei MacPorts: Jedes Paket von Grund auf zu kompilieren ist einfach verrückt. Ich verlasse den Laptop für Tage und Nächte, um R mit MacPorts zu installieren (das zuerst gcc43, perl, automake, glib2 und viele mehr ...) kompiliert. dehmann vor 14 Jahren 0
Wenn Sie vorgefertigte Binärpakete benötigen, besuchen Sie [Rudix] (http://rudix.org/). Telemachus vor 13 Jahren 0

5 Antworten auf die Frage

10
Jeremy L

Es gibt keinen offiziellen Paketmanager für OS X.

Fink, MacPorts und Homebrew bieten eigene Funktionen und Funktionen, um diese Lücke zu füllen.

Wie von vielen Benutzern angegeben:

  • Vermeiden Sie die Verwendung von / usr
  • Bis Sie Ihren PATH konfigurieren, werden Pakete aus verschiedenen Verzeichnissen nicht gefunden.
Danke für die Antwort. Das ist ziemlich enttäuschend. Warum können sie keinen richtigen Paketmanager anbieten? :-( dehmann vor 14 Jahren 0
Ihre Zielgruppe würde nicht wissen, was sie tun soll. Der Rest von uns macht es möglich :-) Jeremy L vor 14 Jahren 5
Ich wähle es als akzeptierte Antwort, aber ich würde hinzufügen, dass es in Ordnung ist, mehrere Manager einzusetzen. Zumindest Fink und MacPorts können nebeneinander existieren, da sie in verschiedenen Verzeichnissen installiert werden. dehmann vor 14 Jahren 0
7
Spiff

Zwar gibt es keinen offiziellen Unix / FOSS-Paketmanager für Mac OS X, es sei jedoch darauf hingewiesen, dass MacPorts erstellt wurde und in erster Linie von den Mac OS X / Darwin-Ingenieuren von Apple verwaltet wird. Die macports.org-Website wird auf Apple-Servern im Rahmen des Apple-Projekts "MacOSForge.com" gehostet. Da Mac OS X / Darwin auf * BSD basiert, stammen viele Softwareentwickler von Apple für Unix-Layer aus den * BSD-Traditionen. Daher haben sie MacPorts nach dem * BSD-Modell "Ports" modelliert.

Fink war der ursprüngliche Open-Source-Paketmanager für Mac OS X, hat jedoch keine engen organisatorischen Beziehungen zu Apple und entschied sich für die apt-get-Tradition von Debian Linux.

Ich bin mir nicht sicher, ob die oben genannten Details ausreichen, um eine Empfehlung zu empfehlen. Ich würde sagen, es hängt von dem Modell ab, mit dem Sie bereits besser vertraut sind. Wenn Sie apt-get besser kennen, gehen Sie zu Fink. Wenn Sie mit den "Ports" von BSD vertraut sind, gehen Sie zu MacPorts.

Wie andere schon gesagt haben, sollten Sie die Standard-Unix-Tools von Mac OS X am besten alleine lassen. Fink und MacPorts haben diese Lektion bereits gelernt und installieren eigene Kopien von Dingen in ihren eigenen Verzeichnishierarchien (/ sw für Fink, / opt für MacPorts). Homebrew hat diese Lektion noch nicht vollständig gelernt, aber sobald ein Benutzer Homebrew verwendet, um die integrierte Kopie von beispielsweise Perl oder Python zu aktualisieren, besteht ein unvorhergesehenes Kompatibilitätsproblem, das die eingebauten Mac-Komponenten unterbricht OS X, z. B. Installationspakete (Mac OS X-Paketdateien), die Perl-Skripts verwenden, um einige Installationsaufgaben auszuführen.

Soweit ich es verstehe, installiert Homebrew unter / usr / local / und wird daher niemals das System Python überschreiben. Pepijn vor 14 Jahren 5
Mit Homebrew können Sie Ihre vorhandenen Komponenten nicht überschreiben. OSX wird standardmäßig ohne / usr / local ausgeliefert. Paul Robinson vor 13 Jahren 4
5
Josh K

Es gibt keinen offiziellen Paketmanager für OS X.

Fink sagt wahrscheinlich, dass es nicht installiert ist, weil es nicht im Fink-Pfad installiert ist. Ich bin auf Probleme gestoßen, wenn ich etwas von Fink oder MacPorts installiere oder Kopien mit unterschiedlichen Versionsnummern kopiere.

Wählen Sie eine aus und bleiben Sie dabei. Wenn Sie das Gefühl haben, dass Sie Änderungen vornehmen müssen, sollten Sie den anderen Paket-Manager löschen und den neuen installieren.

3
Doug Harris

Die Version von svn, die Sie sehen, kam mit Mac OS X - nicht von Fink oder einer anderen Quelle.

Sie können verschiedene Versionen mit dem typeBefehl bash identifizieren . Zum Beispiel verwende ich MacPorts und installiere eine neuere Version von sqlite3:

$ type -a sqlite3 sqlite3 is /opt/local/bin/sqlite3 sqlite3 is /usr/bin/sqlite3 

Die Version in / opt / local / bin stammt von MacPorts, die Version in / usr / bin mit Mac OS X.

Ich empfehle Ihnen, die Fink- oder MacPorts-Binärdateien nicht in / usr zu installieren. Lassen Sie Fink in / sw oder MacPorts in / opt / local installieren. Passen Sie Ihre Einstellungen PATHan, um die Fink / MacPorts-Versionen vor den Standardversionen zu finden

Mit ähnlichen Flags können Sie "which -a sqlite3" verwenden Jeremy L vor 14 Jahren 0
0
Telemachus

Eine andere Option, die weniger Aufmerksamkeit als Homebrew, MacPorts oder Fink bekommt, ist Rudix .