Domanda

Installazione di Mercurial su Mac OS X 10.6 Snow Leopard

ho installato Mercurial 1.3.1 su Mac OS X 10.6 Snow Leopard dai sorgenti usando il seguente:

cd ~/src
curl -O https://www.mercurial-scm.org/release/mercurial-1.3.1.tar.gz
tar -xzvf mercurial-1.3.1.tar.gz
cd mercurial-1.3.1
make all
sudo make install

Questo installa i file site-packages per Mercurial in /usr/local/lib/python2.6/site-packages/. So che l'installazione di Mercurial dalla Immagine Mac Disk installare i file in /Library/Python/2.6/site-packages/, che è la directory site-packages per la X di default di Mac OS Python installare.

Ho Python 2.6.2+ installato come un quadro con la sua directory site-packages in:

  

/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages

Con Mercurial installato in questo modo, devo problema:

  

PYTHONPATH = / usr / local / lib / python2.6 / site-packages: "$ {PYTHONPATH}"

al fine di ottenere Mercurial di lavorare.

Domande

  • Come posso installare Mercurial dai sorgenti con il sito-pacchetti in una directory diversa?
  • C'è un vantaggio o uno svantaggio per avere le site-packages nella posizione attuale? Sarebbe meglio in una delle directory sito-package Python che già esistono?
  • Ho bisogno di essere preoccupato per virtualenv che lavorano in modo corretto dal momento che ho modificato PYTHONPATH (o qualsiasi altri conflitti per questo)?

Motivi per l'installazione da sorgenti

Dan Benjamin di Hivelogic offre i vantaggi di e le istruzioni per l'installazione di Mercurial dai sorgenti nel suo articolo Installazione di Mercurial su Snow Leopard .

È stato utile?

Soluzione

Soprattutto perché si dispone di Python 2.6 disponibile, è possibile fare qualcosa di simile python setup.py install --user, che installerà Mercurial con ~ / .local come prefisso. Non è necessario cambiare la PYTHONPATH per questo, ma solo aggiungere ~ / .local / bin al PATH.

Per quanto riguarda i vantaggi e svantaggi: Che tutto dipende da ciò che il vostro PYTHONPATH in generale sembra come poiché la modifica sarà naturalmente modificare l'ordine di caricamento di pacchetti (che diventa rilevante se si dispone di una versione di Mercurial installata con un prefisso e un altro con una diversa prefisso). In generale, cerco di mettere tutti i pacchetti personalizzati all'interno di una determinata cartella site-packages (diciamo /usr/local/lib/python2.6/site-packages). Anche in questo caso: Se si è l'unica persona che utilizzerà queste librerie, la bandiera --user fornito da distutils Python 2.6 lo rende qualcosa di simile piuttosto facile (con l'aggiunta di ~ / .local al percorso di ricerca di default per i moduli)

virtualenv dovrebbe funzionare bene fino a voi il vostro PYTHONPATH viene utilizzato in modo coerente.

Altri suggerimenti

Perché bisogno di utilizzare macports? python easy_install è il modo più semplice e senza errori:

easy_install -U mercurial

E 'solo un semplice proiettile d'oro, per tutto il tempo.

Installa mercuriale - o qualsiasi altro pacchetto di Python in generale - nella vostra directory home dell'utente. Così è possibile accedervi da qualsiasi Python (di stessa versione) o qualsiasi virtualenv. per ulteriori informazioni, vedere PEP 370 .

$ cd mercurial-x.y.z/
$ python2.6 setup.py install --user
$ ~/.local/bin/hg
...

Ma perché si vuole costruire mercuriale manualmente? Io uso macports .

$ sudo port install mercurial
$ which hg
/opt/local/bin/hg

Aggiorna : Al giorno d'oggi, mi è sufficiente utilizzare PyPM per installare Mercurial in ~/.local/bin/hg.

come suggerito da Sridhar, macports funziona bene su architettura e versioni di MacOsX + multipla permette aggiornamenti e molto altro:

$ port variants mercurial
mercurial has the variants:
   bash_completion: Completion support for bash
   zsh_completion: Install mercurial zsh completion file
$

in modo che si può utilizzare:

$ sudo port install mercurial +bash_completion
--->  Computing dependencies for mercurial
--->  Fetching mercurial
--->  Attempting to fetch mercurial-1.3.1.tar.gz from http://arn.se.distfiles.macports.org/python
--->  Attempting to fetch mercurial-1.3.1.tar.gz from http://www.selenic.com/mercurial/release/
--->  Verifying checksum(s) for mercurial
--->  Extracting mercurial
--->  Configuring mercurial
--->  Building mercurial
--->  Staging mercurial into destroot
--->  Installing mercurial @1.3.1_0+bash_completion
--->  Activating mercurial @1.3.1_0+bash_completion
--->  Cleaning mercurial
$

Tutte queste risposte sembrano complicate alla media degli utenti di Mac OS X, perché sono specifici per altre piattaforme installare. A partire da ora il sito Mercurial offre un pacchetto di installazione (compresso in un file zip).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top