Qual è il programma di installazione ufficiale per i pacchetti Unix in Mac OS?

Sono un po 'confuso dell'installazione di pacchetti Unix standard su Mac OS X. Ad esempio, ho / usr / bin / svn, che è SVN v.1.4.4, ma FinkCommander dice che svn non è installato. Lo stesso vale per altri pacchetti, come emacs ecc.

È solo una impostazione errata di FinkCommander? Attualmente è impostato per installare tutto in /sw , che non è nemless nel PATH . Quindi devo solo impostarla per installare i pacchetti in /usr e riconoscerà il software installato? Non voglio installare pacchetti duplicati di tutto, ed è abbastanza strano che FinkCommander sembra non essere in sincronia con il software installato.

O c'è un altro installatore che dovrei usare? È il porttore Mac utilizzato dall'installatore consigliato?

(Sto utilizzando Mac OS 10.5.8.)

Non esiste un gestore di pacchetti ufficiale per OS X.

Fink , MacPorts e Homebrew forniscono le proprie caratteristiche e funzionalità diverse per riempire questo vuoto.

Come sottolineato da molti utenti:

  • evitare l'uso di / usr
  • finché non si configura il PATH, i pacchetti di directory differenti non verranno trovati.

Sebbene non esista un gestore di pacchetti Unix / FOSS per Mac OS X, è importnte notare che MacPort è stato creato e ancora viene mantenuto principalmente dagli ingegneri Mac OS X / Darwin di Apple. Il sito di macports.org è ospitato sui server di Apple, come parte del progetto "MacOSForge.com" di Apple. Poiché Mac OS X / Darwin è * basata su BSD, molti ingegneri del software a livello di Unix di Apple provengono dalle tradizioni * BSD, quindi hanno modellato MacPort dopo il model * delle porte * BSD.

Fink è stato il primo gestore di pacchetti open source per Mac OS X ma non ha stretti legami organizzativi con Apple e ha scelto di seguire la tradizione Debian Linux apt-get.

Non sono sicuro che uno dei dettagli sopra è sufficiente per consigliare uno sull'altro. Vorrei dire che è giù a quale model è già più conosciuto. Se hai più familiarità con apt-get, vai con Fink. Se hai più familiarità con le porte BSD, andare con MacPorts.

Come altri hanno detto, è meglio lasciare gli strumenti predefiniti di Unix di Mac OS X da sola. Fink e MacPorts hanno già appreso la lezione e installano le proprie copie di cose nelle proprie gerarchie di directory (/ sw per Fink, / opt for MacPorts). Homebrew non ha ancora appreso pienamente questa lezione, ma non appena un utente utilizza Homebrew per aggiornare la copia incorporata di, per esempio, Perl o Python e ha un problema di compatibilità imprevisto che rompe i componenti incorporati di Mac OS X, quali i pacchetti di installazione (file di bundle di Mac OS X.pkg) che utilizzano gli script Perl per eseguire alcune delle operazioni di installazione.

Non esiste un gestore di pacchetti ufficiale per OS X.

Fink probabilmente sta dicendo che non è installato perché non è installato nel path Fink. Mi sono imbattuto in problemi quando installi qualcosa da Fink o MacPort, o duplicato copie con diversi numbers di versione.

Scegliere uno e attaccarlo. Se ritieni che devi cambiare, sarebbe meglio cancellare l'altro gestore pacchetti e reinstallarlo da quello nuovo.

La versione di svn che stai vedendo è venuta con Mac OS X – non da Fink o da qualsiasi altra fonte.

È ansible identificare diverse versioni utilizzando il command di type bash. Ad esempio, utilizzo MacPorts e ho installato una versione più recente di sqlite3:

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

La versione in / opt / local / bin proveniva da MacPorts, la versione in / usr / bin viene fornita con Mac OS X.

Raccommand di non installare binari Fink o MacPorts in / usr – lasciare quelli soli. Fai installare Fink in / sw o MacPorts in / opt / local. Regolare il PATH per trovare le versioni Fink / MacPorts prima delle versioni standard

Un'altra opzione che ottiene less attenzione di Homebrew , MacPorts o Fink è Rudix .