2015-05-30 15 views
5

Ho un sistema OS X in cui ho bisogno di installare un modulo per Python 2.6. Sia pip e easy_install-2.6 stanno fallendo:Come installo pip per Python 2.6 su OS X?

# /usr/bin/easy_install-2.6 pip 
Searching for pip 
Reading http://pypi.python.org/simple/pip/ 
Download error: unknown url type: https -- Some packages may not be found! 
Couldn't find index page for 'pip' (maybe misspelled?) 
Scanning index of all packages (this may take a while) 
Reading http://pypi.python.org/simple/ 
Download error: unknown url type: https -- Some packages may not be found! 
No local packages or download links found for pip 
error: Could not find suitable distribution for Requirement.parse('pip') 

Download get_pip.py ed eseguirlo con il brodo OS X pitone fornito 2.6:

# python2.6 ./get_pip.py 
Traceback (most recent call last): 
    File "./get_pip.py", line 17868, in <module> 
    main() 
    File "./get_pip.py", line 162, in main 
    bootstrap(tmpdir=tmpdir) 
    File "./get_pip.py", line 82, in bootstrap 
    import pip 
    File "/tmp/tmpVJBvaW/pip.zip/pip/__init__.py", line 15, in <module> 
    File "/tmp/tmpVJBvaW/pip.zip/pip/vcs/subversion.py", line 9, in <module> 
    File "/tmp/tmpVJBvaW/pip.zip/pip/index.py", line 30, in <module> 
    File "/tmp/tmpVJBvaW/pip.zip/pip/wheel.py", line 34, in <module> 
    File "/tmp/tmpVJBvaW/pip.zip/pip/_vendor/__init__.py", line 92, in load_module 
ImportError: No module named 'pip._vendor.distlib.scripts' 


$ python2.6 --version 
Python 2.6.9 

Con python2.7, entrambi i metodi funziona bene.

+4

Dovrebbe essere fornito automaticamente quando si installa Python tramite 'brew', ad esempio' brew install python'. In alternativa utilizzare: 'sudo easy_install pip'. – kenorb

+1

Prova l'estensione Homebrew, [BrewPip] (http://brewformulas.org/BrewPip). –

+2

Che ne dici di provare a installare pip dall'origine? https://pypi.python.org/pypi/pip#downloads – dermen

risposta

3

Scaricare il file sorgente here. Quindi fare

>> cd ~/Downloads 
>> tar -xzvf pip-7.0.1.tar.gz 

(sostituire ~/Downloads se necessario). Poi

>> cd pip-7.0.1 
>> sudo python2.6 setup.py install 
>> cd 

(l'ultima cd è usato per lasciare la cartella di generazione). Ora si dovrebbe essere in grado di eseguire

>> python2.6 -c 'import pip;print pip.__version__' 
7.0.1 

Per impostazione predefinita, pip (se installato dai sorgenti) dovrebbe essere installato in /usr/local/bin. Per controllare:

>> /usr/local/bin/pip --version 
pip 7.0.1 from /Library/Python/2.6/site-packages/pip-7.0.1-py2.6.egg (python 2.6) 

Ora è possibile installare i pacchetti preferiti utilizzando

>> /usr/local/bin/pip install package 
>> python2.6 -c 'import package' 

Se si dispone di versioni contrastanti di pip in /usr/local/bin si può provare questa ridicola uno di linea:

>> python -c 'import os;dir="/usr/local/bin";[ os.system("echo %s/%s: && %s/%s --version"%(dir,s,dir,s)) for s in os.listdir("/usr/local/bin") if s.startswith("pip") ]' 
/usr/local/bin/pip: 
pip 7.0.1 from /Library/Python/2.6/site-packages/pip-7.0.1-py2.6.egg (python 2.6) 
/usr/local/bin/pip2: 
pip 7.0.1 from /Library/Python/2.6/site-packages/pip-7.0.1-py2.6.egg (python 2.6) 
/usr/local/bin/pip2.6: 
pip 7.0.1 from /Library/Python/2.6/site-packages/pip-7.0.1-py2.6.egg (python 2.6) 

a trova quello collegato a py2.6. (nel mio caso sono tutti uguali)

+0

In seguito a questo processo sembra lanciare lo stesso ImportError come indicato nella domanda. – interpolack

1

Per impostazione predefinita, Homebrew fornisce il comando pip tramite: brew install python.

Quindi prova a installare Python usando Homebrew. Prova a non utilizzare sudo quando lavori con brew.

per verificare quali file vengono installati con il pacchetto di Python, provare:

$ brew list python 
/usr/local/Cellar/python/2.7.9/bin/pip 
/usr/local/Cellar/python/2.7.9/bin/pip2 
/usr/local/Cellar/python/2.7.9/bin/pip2.7 
... 

che dovrebbe consistere pip.

Dopo l'installazione si dovrebbe link simbolico file installati del vostro formula:

brew link python 

che dovrebbe creare i giusti collegamenti simbolici (come /usr/local/bin/pip punta al tuo Cellar/python/2.?.?/bin/pip)

Se avete problema di autorizzazione, è può risolvere il problema da:

sudo chgrp -R admin /usr/local /Library/Caches/Homebrew 
sudo chmod -R g+w /usr/local /Library/Caches/Homebrew 

e assicurarsi che l'utente è nel gruppo di amministrazione (id -Gn $USER).

Poi ri-creare un collegamento di nuovo:

brew unlink python && brew link python 

Per testare funzionamento a secco, scollegare ed eseguire: brew link -n python per vedere i link dei file che collegherebbe brew.

dopo il collegamento è riuscito, assicurarsi che la variabile di sistema PATH hanno /usr/local, in caso contrario, aggiungere:

export PATH=/usr/local/sbin:/usr/local/bin:$PATH 

al file ~/.bashrc.

In caso di successo, il tuo pip dovrebbe funzionare ora.


Se non si desidera utilizzare Homebrew o hai due Pythons installato sul vostro Mac, in alternativa è possibile installarlo tramite:

sudo easy_install pip 

Il tuo errore:

Download error: unknown url type: https

significa che il tuo Python non può gestire il protocollo HTTPS senza il supporto SSL, quindi prova ad installare: pacchetto openssl (su L inefficace o libssl-dev o openssl-devel).