2015-07-24 16 views
7

Ho letto molte esercitazioni sul Web e ho risposto al sito sull'utilizzo di Homebrew. Per quanto riguarda il numero Python, il consiglio mi lascia più domande che risposte.Perché dovrebbe essere usato Homebrew per installare Python?

ho capito il come, ma nessuna delle risposte che ho visto finora sono davvero spiegato il perché dietro all'uso Homebrew installare Python e quali sono i vantaggi per l'installazione di Python con Homebrew anziché utilizzare OS-X installatori forniti dal Python Fondazione?

Le versioni più recenti degli installatori di Python e l'implementazione corrente di PIP sembrano funzionare abbastanza bene, quindi apprezzerei molto qualsiasi input sulla mia domanda. Ho lavorato con Python per un po ', ma da un punto di vista più tattico e problematico e sono nuovo di zecca per strumenti come Brew e software di controllo versione come Git. Sto cercando di alzare la curva di apprendimento. Trovare una risposta al motivo per cui sceglierei un'installazione Homebrew oltre a passare a python.org e scaricare da loro e quindi utilizzare pip per installare pacchetti potrebbe aiutarmi a comprendere i vantaggi di uno strumento come Homebrew.

Quindi, suppongo, cosa significa che lo Homebrew mi dà che l'installazione eseguita da TPF non lo sia?

Esistono vantaggi/svantaggi di cui Homebrew installa Python e Python pacchetti dalla /Library/Frameworks/ e la cartella site-packages in tale contesto?

Anche se questa ultima domanda è troppo ampia e probabilmente fuori portata, se qualcuno volesse anche indirizzare o fornire un link a una buona risposta su quali sono i vantaggi dell'utilizzo di Homebrew in generale, lo apprezzerei?

Grazie,

risposta

4

Il grande vantaggio di utilizzare un gestore di pacchetti come Homebrew è che rende più facile mantenere la vostra installazione di Python fino ad oggi. Se scarichi Python dal sito web, aggiornalo significa che dovrai tornare al sito Web e scaricare una nuova copia di Python (o qualsiasi altra cosa che devi aggiornare che potrebbe essere stata installata con Homebrew).

Inoltre, durante il download degli installer, trovo che tendono a ingombrare la mia cartella di download e mi richiedono di pulire periodicamente i file inutilizzati. Preferisco trascorrere il mio tempo a programmare invece di gestire il mio utilizzo dello spazio su disco.

Quando si tratta di aggiornare qualsiasi pacchetto con Homebrew, il comando è semplice:

brew upgrade 

e questo sarà aggiornare tutti i pacchetti obsoleti che sono stati installati con Brew.

Ora, questo non è qualcosa di unico in Homebrew. Macports, PIP, npm, Maven e altri strumenti di gestione dei pacchetti sono anche in grado di gestire le versioni dei moduli o degli strumenti installati.

Per ulteriori informazioni, vedere Safari Books Online - Keeping Your Homebrew Up To Date.

+0

Ciao @ jmort253. Grazie per la risposta e il link. Ci sto lavorando ora. Ho visto che lo stesso autore ha scritto anche [Getting Started With Homebrew] (https://www.safaribooksonline.com/blog/2014/03/03/homebrew/) quindi sto iniziando da lì. – AMR

+0

Sarebbe un'analogia molto liberale che un gestore di pacchetti sia per l'Open Source che cos'è il Mac App Store per il software distribuito con sandbox Apple? – AMR

+0

Un'analogia molto sciolta, ma è pur sempre un'analogia. Lo store Apple contiene principalmente software o strumenti software. I gestori di pacchetti possono anche contenere software e strumenti, ma alcuni gestiscono le dipendenze in un progetto software. Spero che questo ti aiuti! – jmort253

1

Pochi motivi per non utilizzare il sistema di pitone su OS X da this post,

  • Apple non sempre fare un buon lavoro a mantenere l'ambiente di runtime di Python fino ad oggi,
  • si può essere ingombranti per giocare con le autorizzazioni solo per installare librerie Python di terze parti,
  • infine, Apple ha la tendenza a cancellare i pacchetti del sito con ogni aggiornamento del sistema operativo principale.

L'utilizzo di un gestore di pacchetti indipendente per moduli Python, come Homebrew, conda, MacPorts, ets. è quindi preferito.

+1

Salve @rth. Grazie per la risposta. Sì, ho compreso i vantaggi di avere un'istanza utente installata di Python rispetto allo sviluppo con la versione Apple e non ho messo in discussione questa saggezza. Capisco anche perché potresti usare una distribuzione come EPD o Anaconda su TPF. La mia domanda è più in linea con il perché un gestore di pacchetti e non solo TPF dmg e PIP. Probabilmente sto cercando di ricapitolare i gestori di pacchetti come strumento, dato che sono relativamente nuovo all'idea dello sviluppo open source. – AMR

+2

@AMR Bene, quindi stai essenzialmente confrontando un gestore di pacchetti (pip) con un altro (Homebrew). Entrambi potrebbero funzionare. Credo che su OS-X, Homebrew sia più pratico anche nel gestire i pacchetti di Linux classici. Di ', vuoi installare il cuscino che dipende da 'libjpeg'. Se sei fortunato, OS-X avrà la versione corretta di 'libjpeg', e' pip install pillow 'sarà sufficiente. Più probabilmente, tuttavia, invierà una versione obsoleta e sarà necessario compilare/installare manualmente la versione corretta di libjpeg (solo un'illustrazione). Questo diventa molto noioso e l'Homebrew automatizza quello per te. – rth

+1

Ok. Quindi se le dipendenze del pacchetto, ad esempio il cuscino, non sono pacchetti relativi a pypi, allora pip non si prenderà cura di queste dipendenze, tuttavia un gestore di pacchetti diverso come Homebrew o MacPorts potrebbe? – AMR

Problemi correlati