pip/docs/html/installing.rst

201 lines
4.9 KiB
ReStructuredText
Raw Normal View History

2013-01-18 22:25:15 +01:00
.. _`Installation`:
2011-03-15 06:43:03 +01:00
============
2013-01-18 22:25:15 +01:00
Installation
============
Do I need to install pip?
2020-02-11 14:00:03 +01:00
=========================
pip is already installed if you are using Python 2 >=2.7.9 or Python 3 >=3.4
downloaded from `python.org <https://www.python.org>`_ or if you are working
in a :ref:`Virtual Environment <pypug:Creating and using Virtual Environments>`
created by :ref:`pypug:virtualenv` or :ref:`pyvenv <pypug:venv>`.
Just make sure to :ref:`upgrade pip <Upgrading pip>`.
.. _`get-pip`:
Installing with get-pip.py
2020-02-11 14:00:03 +01:00
==========================
To install pip, securely [1]_ download ``get-pip.py`` by following
this link: `get-pip.py
<https://bootstrap.pypa.io/get-pip.py>`_. Alternatively, use ``curl``::
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
Then run the following command in the folder where you
2020-08-07 20:14:23 +02:00
have downloaded ``get-pip.py``:
2020-08-07 20:14:23 +02:00
.. tabs::
.. group-tab:: Unix/macOS
2020-08-07 20:14:23 +02:00
.. code-block:: shell
2020-08-07 20:14:23 +02:00
python get-pip.py
2020-08-07 20:14:23 +02:00
.. group-tab:: Windows
2020-08-07 20:14:23 +02:00
.. code-block:: shell
2020-08-07 20:14:23 +02:00
py get-pip.py
.. warning::
Be cautious if you are using a Python install that is managed by your operating
system or another package manager. ``get-pip.py`` does not coordinate with
those tools, and may leave your system in an inconsistent state.
``get-pip.py`` also installs :ref:`pypug:setuptools` [2]_ and :ref:`pypug:wheel`
if they are not already. :ref:`pypug:setuptools` is required to install
:term:`source distributions <pypug:Source Distribution (or "sdist")>`. Both are
required in order to build a :ref:`Wheel cache` (which improves installation
speed), although neither are required to install pre-built :term:`wheels
<pypug:Wheel>`.
.. note::
The get-pip.py script is supported on the same python version as pip.
2017-03-18 19:42:11 +01:00
For the now unsupported Python 2.6, alternate script is available
`here <https://bootstrap.pypa.io/2.6/get-pip.py>`__.
get-pip.py options
2020-02-11 14:00:03 +01:00
------------------
.. option:: --no-setuptools
If set, do not attempt to install :ref:`pypug:setuptools`
.. option:: --no-wheel
If set, do not attempt to install :ref:`pypug:wheel`
``get-pip.py`` allows :ref:`pip install options <pip
install Options>` and the :ref:`general options <General Options>`. Below are
some examples:
2020-08-07 20:14:23 +02:00
Install from local copies of pip and setuptools:
.. tabs::
.. group-tab:: Unix/macOS
2020-08-07 20:14:23 +02:00
.. code-block:: shell
2020-08-07 20:14:23 +02:00
python get-pip.py --no-index --find-links=/local/copies
2020-08-07 20:14:23 +02:00
.. group-tab:: Windows
2020-08-07 20:14:23 +02:00
.. code-block:: shell
2020-08-07 20:14:23 +02:00
py get-pip.py --no-index --find-links=/local/copies
2020-08-07 20:14:23 +02:00
Install to the user site [3]_:
.. tabs::
.. group-tab:: Unix/macOS
2020-08-07 20:14:23 +02:00
.. code-block:: shell
2020-08-07 20:14:23 +02:00
python get-pip.py --user
2020-08-07 20:14:23 +02:00
.. group-tab:: Windows
.. code-block:: shell
2020-08-07 20:14:23 +02:00
py get-pip.py --user
2020-08-07 20:14:23 +02:00
Install behind a proxy:
.. tabs::
.. group-tab:: Unix/macOS
.. code-block:: shell
python get-pip.py --proxy="http://[user:passwd@]proxy.server:port"
.. group-tab:: Windows
2020-08-07 20:14:23 +02:00
.. code-block:: shell
2020-08-07 20:14:23 +02:00
py get-pip.py --proxy="http://[user:passwd@]proxy.server:port"
``get-pip.py`` can also be used to install a specified combination of ``pip``,
2020-08-07 20:14:23 +02:00
``setuptools``, and ``wheel`` using the same requirements syntax as pip:
.. tabs::
.. group-tab:: Unix/macOS
2020-08-07 20:14:23 +02:00
.. code-block:: shell
2020-08-07 20:14:23 +02:00
python get-pip.py pip==9.0.2 wheel==0.30.0 setuptools==28.8.0
2020-08-07 20:14:23 +02:00
.. group-tab:: Windows
.. code-block:: shell
py get-pip.py pip==9.0.2 wheel==0.30.0 setuptools==28.8.0
Using Linux Package Managers
2020-02-11 14:00:03 +01:00
============================
See :ref:`pypug:Installing pip/setuptools/wheel with Linux Package Managers` in
the `Python Packaging User Guide
2019-12-10 23:18:38 +01:00
<https://packaging.python.org/guides/tool-recommendations/>`_.
.. _`Upgrading pip`:
Upgrading pip
2020-02-11 14:00:03 +01:00
=============
2014-03-26 19:05:23 +01:00
.. tabs::
2014-03-26 19:05:23 +01:00
.. group-tab:: Unix/macOS
.. code-block:: shell
python -m pip install -U pip
.. group-tab:: Windows
.. code-block:: shell
py -m pip install -U pip
2014-03-26 19:05:23 +01:00
.. _compatibility-requirements:
Python and OS Compatibility
2020-02-11 14:00:03 +01:00
===========================
2014-03-26 19:05:23 +01:00
2019-10-15 19:06:29 +02:00
pip works with CPython versions 2.7, 3.5, 3.6, 3.7, 3.8 and also PyPy.
2011-03-15 06:43:03 +01:00
2017-03-18 19:42:11 +01:00
This means pip works on the latest patch version of each of these minor
versions. Previous patch versions are supported on a best effort approach.
2016-11-06 18:24:43 +01:00
pip works on Unix/Linux, macOS, and Windows.
2011-03-15 06:43:03 +01:00
2014-03-26 19:05:23 +01:00
----
2017-05-16 20:18:27 +02:00
.. [1] "Secure" in this context means using a modern browser or a
tool like ``curl`` that verifies SSL certificates when downloading from
https URLs.
2017-05-16 20:18:27 +02:00
.. [2] Beginning with pip v1.5.1, ``get-pip.py`` stopped requiring setuptools to
2014-02-12 07:13:03 +01:00
be installed first.
2011-03-15 06:43:03 +01:00
2017-05-16 20:18:27 +02:00
.. [3] The pip developers are considering making ``--user`` the default for all
installs, including ``get-pip.py`` installs of pip, but at this time,
``--user`` installs for pip itself, should not be considered to be fully
tested or endorsed. For discussion, see `Issue 1668
<https://github.com/pypa/pip/issues/1668>`_.