问题描述
我有Ubuntu 11.10。我从该启动板存储库中安装了pypy apt-get:https://launchpad.net/~pypy该计算机已经装有python,并且python具有自己的pip。如何为pypy安装pip?如何与python区别使用它?
最佳解决思路
从此处报价(略有变化)pypy website:
If you want to install 3rd party libraries, the most convenient way is to install pip:
$ curl -O https://bootstrap.pypa.io/get-pip.py $ ./pypy-2.1/bin/pypy get-pip.py $ ./pypy-2.1/bin/pip install pygments # for example
为了更好地使用它,您可能需要在其中添加一个别名~/.bashrc
:
alias pypy_pip='./pypy-2.1/bin/pip'
实际pip可执行文件所在的位置必须从pypy get-pip.py
的输出中获取
次佳解决思路
要保留单独的安装,您可能要为PyPy创建virtualenv。然后,您可以在virtualenv中运行pip install whatever
,它将为PyPy安装它。创建virtualenv时,它将自动为您安装pip。
否则,您将需要确定PyPy将从何处导入并在其中一个位置中安装Distribution和Pip。与PyPy一起运行时,pip’s installer应该自动执行此操作。请谨慎使用此选项-如果它决定安装在系统Python目录中,则可能会破坏其他功能。
第三种解决思路
如果要与pypy一起使用pip:
pypy -m pip install [package]
pip包含在pypy中,因此只需使用-m标志指定目标pip
第四种思路
从pypy
安装pip
的问题(至少在通过apt-get
安装pypy
时)是因为它已安装到系统路径中:
$ whereis pip
pip: /usr/local/bin/pip /usr/bin/pip
因此,在完成此类安装后,默认情况下将执行pypy pip
(/usr /local /bin /pip)而不是python pip
(/usr /bin /pip),这可能会中断整个Ubuntu的后续更新。
virtualenv
的问题在于,您应该记住在哪里创建了什么环境。
方便的替代解决方案是conda
(miniconda),它不仅管理python部署:http://conda.pydata.org/miniconda.html。 conda
,pip
和virtualenv
的比较:http://conda.pydata.org/docs/_downloads/conda-pip-virtualenv-translator.html