如何在OS X上安装Python 2.6的pip?

时间:2015-05-30 00:08:16

标签: python macos python-2.6

我有一个OS X系统,我需要为python 2.6安装一个模块。 pipeasy_install-2.6都失败了:

# /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')

下载get_pip.py并使用OS X提供的python 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

使用python2.7,任何一种方法都可以正常工作。

2 个答案:

答案 0 :(得分:5)

下载源文件here。然后做

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

(必要时替换~/Downloads)。然后

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

(最后cd用于离开构建目录)。现在你应该能够运行

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

默认情况下,pip(从源安装时)应安装到/usr/local/bin。检查:

>> /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)

现在,您可以使用

安装自己喜欢的软件包
>> /usr/local/bin/pip install package
>> python2.6 -c 'import package'

如果pip中的/usr/local/bin版本存在冲突,您可以试试这个荒谬的内容:

>> 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)

找到链接到py2.6的那个。 (在我看来,他们都是一样的)

答案 1 :(得分:1)

默认情况下,Homebrew通过pip提供brew install python命令。

所以尝试使用Homebrew安装Python。在使用sudo时尝试不使用brew

要验证Python软件包安装了哪些文件,请尝试:

$ 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
...

应由pip组成。

安装完成后,您应该通过以下方式对公式的已安装文件进行符号链接:

brew link python

应该创建正确的符号链接(例如/usr/local/bin/pip指向您的Cellar/python/2.?.?/bin/pip

如果您有权限问题,可以通过以下方式修复:

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

并确保您的用户位于管理员组(id -Gn $USER)。

然后再次重新链接:

brew unlink python && brew link python

要测试干运行,请取消关联并运行:brew link -n python以查看brew将链接的文件的链接。

链接成功后,确保您的PATH系统变量有/usr/local,如果没有,请添加:

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

到您的~/.bashrc文件。

如果成功,您的pip现在应该可以使用。

如果你不想使用Homebrew或者你的Mac上安装了两个Pythons,你可以通过以下方式安装它:

sudo easy_install pip

您的错误:

  

下载错误:未知网址类型:https

表示如果没有SSL支持,您的Python无法处理HTTPS协议,请尝试安装:openssl包(在Linux上libssl-devopenssl-devel)。