python versione 2.7.8 non può eseguire / usr / bin / easy_install. Prova l'alternativa (s):

0

Sto facendo un po 'di sviluppo su Python e ho appena aggiornato il SO su Mountain Lion.

Mi ero sostituito alle versioni Python originali con Snow Leopard usando la GUI di Python.org, quindi ho aggiunto i collegamenti in / usr / bin:

lrwxr-xr-x  1 root  admin  71 Oct 22 18:12 python -> ../../../Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7

Così ora ho quello che penso siano tutte le versioni di Python che fanno parte di OSX 10.8.5 (2.5, 2.6, 2.7) situate in:

/System/Library/Frameworks/Python.framework/Versions/

e collegati da /usr/bin

E ANCHE quelli installati con la GUI in:

/Library/Frameworks/Python.framework/Versions/

Ma sto pensando di usare le versioni che installo con fink , che è un port tree simile a macports che sono / che si troveranno in:

/sw/bin

Quindi ho commentato le esportazioni PATH in ~/.bash_profile che indicava gli eseguibili non-fink:

#PATH="/usr/local/bin:/usr/local/sbin:/System/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
#export PATH

#PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
#export PATH

E aggiunto:

#  for Fink:
export PATH=$PATH:/sw/bin
. /sw/bin/init.sh

Non capisco ancora lo scripting della shell, ma init.sh inizializza fink, penso soprattutto aggiungendo elementi a $ PATH e altre variabili di ambiente.

In precedenza ho installato vari pacchetti con homebrew , macports e varie GUI e spero di avere un ambiente più comprensibile questa volta.

Al momento devo installare postgreSQL e un gruppo di python modules includendo pip , virtualenv , virtualenvironmentwrapper , psycopg .

Sembra che la vita di easy_install eseguibile (eseguibile binario?) (insieme a easy_install-2.5, 2.6 e 2.7) in /usr/bin/ .

Quindi le mie domande sono:

  1. C'è qualche ragione per avere più di una copia di ogni versione di Python?

  2. Le applicazioni dipendenti dal pitone funzionano finché c'è un collegamento in /usr/bin/ a una libreria python funzionante, eseguibile, e la posizione dell'eseguibile Python si trova in $PATH ?

  3. Ci sono molti motivi per mantenere Python2.5 a questo punto?

  4. sudo easy_install-2.7 pip ha funzionato, quindi cos'è esattamente -rwxr-xr-x 2 root wheel 925 Oct 23 14:48 easy_install per?

posta MikeiLL 25.10.2014 - 02:30
fonte

1 risposta

0

Va bene.

La risposta al numero 1 è sì.

Gli sviluppatori di fink raccomandano NON rimuovere le versioni OSX di Python, semplicemente perché non sono file terribilmente grandi e potrebbero essere necessari per alcune funzioni e programmi OSX.

E voglio avere una versione aggiuntiva di python2.7 almeno installata da fink, perché è un port tree progettato per creare una struttura di directory simile a UNIX, che con buona speranza farà sì che PostgreSQL e python giochino bene insieme.

Per quanto riguarda la domanda numero 2, non sono sicuro. Io penso questo funzionerebbe, ma lasciare le versioni OSX originali installate evita il problema.

Domanda 3: sì. - vedi risposta alla domanda 1.

Rendere la versione fink quella che viene eseguita tramite il terminale è questione di:

  1. assicurati che la directory che contiene il binario fink python preceda l'OSX (o quella installata dalla GUI) in PATH , che può essere eseguita negli utenti .profile o .bash_profile (che si trova nella directory ~/ , la root dell'utente) invocando lo script init fink, . /sw/bin/init.sh , O assicurandosi che export PATH=/sw/bin:$PATH sia incluso nel file DOPO qualsiasi altra riga che esporta un PATH con uno degli altri percorsi python all'inizio . Ad esempio, export PATH=/usr/bin:$PATH o export PATH=/usr/local/bin:$PATH .

  2. Se non vogliamo invocare il python cli come python2.7 , dovremo creare un collegamento simbolico nella directory /sw/bin che punta "python" a "python2.7", che viene fatto usando sudo ln -s *source* *link* , che in questo caso assomiglia a:

    sudo ln -s /sw/bin/python2.7 / sw / bin / python

Non sono sicuro quale sia la risposta alla domanda 4, ma sto vedendo che tutte le librerie esistenti in /sw/bin vengono chiamate da lì, al contrario di altre installazioni. Buona.

Hai una copia di Learning UNIX per OS X Mountain Lion che sembra abbastanza promettente.

    
risposta data 26.10.2014 - 22:03
fonte

Leggi altre domande sui tag