aboutsummaryrefslogtreecommitdiffstats
path: root/docs/installation.rst
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2017-07-01 17:34:36 -0500
committerAlex Gaynor <alex.gaynor@gmail.com>2017-07-01 15:34:36 -0700
commit1eeaabbbbc8d5074527ba4ab52eefad5a015aa17 (patch)
treefb1f46d1e08b92e19501ef03ab99053867224e61 /docs/installation.rst
parent85675fcbecd1c76d32c4ca3cf8025e6dc304de56 (diff)
downloadcryptography-1eeaabbbbc8d5074527ba4ab52eefad5a015aa17.tar.gz
cryptography-1eeaabbbbc8d5074527ba4ab52eefad5a015aa17.tar.bz2
cryptography-1eeaabbbbc8d5074527ba4ab52eefad5a015aa17.zip
update linux install docs and release instructions (#3746)
* update linux install docs and release instructions * rhel/centos is so bad they don't even have python3
Diffstat (limited to 'docs/installation.rst')
-rw-r--r--docs/installation.rst52
1 files changed, 40 insertions, 12 deletions
diff --git a/docs/installation.rst b/docs/installation.rst
index 0fa986a1..01ac2d94 100644
--- a/docs/installation.rst
+++ b/docs/installation.rst
@@ -18,6 +18,7 @@ PyPy 5.3+ on these operating systems.
* macOS 10.12 Sierra, 10.11 El Capitan, 10.10 Yosemite, 10.9 Mavericks
* x86-64 Ubuntu 14.04, 16.04, and rolling
* x86-64 Debian Wheezy (7.x), Jessie (8.x), Stretch (9.x), and Sid (unstable)
+* x86-64 Alpine (latest)
* 32-bit and 64-bit Python on 64-bit Windows Server 2012
.. warning::
@@ -74,31 +75,58 @@ local `wheel cache`_.
Building cryptography on Linux
------------------------------
-``cryptography`` should build very easily on Linux provided you have a C
-compiler, headers for Python (if you're not using ``pypy``), and headers for
-the OpenSSL and ``libffi`` libraries available on your system.
+``cryptography`` ships a ``manylinux1`` wheel (as of 2.0) so all dependencies
+are included. For users on pip 8.1 or above running on a ``manylinux1``
+compatible distribution (almost everything except Alpine) all you should
+need to do is:
-For Debian and Ubuntu, the following command will ensure that the required
-dependencies are installed (replace ``python-dev`` with ``python3-dev`` if
-you're using Python 3):
+.. code-block:: console
+
+ $ pip install cryptography
+
+If you are on Alpine or just want to compile it yourself then
+``cryptography`` requires a compiler, headers for Python (if you're not
+using ``pypy``), and headers for the OpenSSL and ``libffi`` libraries
+available on your system.
+
+Alpine
+~~~~~~
+
+Replace ``python3-dev`` with ``python-dev`` if you're using Python 2.
+
+.. code-block:: console
+
+ $ sudo apk add gcc musl-dev python3-dev libffi-dev openssl-dev
+
+If you get an error with ``openssl-dev`` you may have to use ``libressl-dev``.
+
+Debian/Ubuntu
+~~~~~~~~~~~~~
+
+Replace ``python3-dev`` with ``python-dev`` if you're using Python 2.
.. code-block:: console
- $ sudo apt-get install build-essential libssl-dev libffi-dev python-dev
+ $ sudo apt-get install build-essential libssl-dev libffi-dev python3-dev
-For Fedora and RHEL-derivatives, the following command will ensure that the
-required dependencies are installed (replace ``python-devel`` with
-``python3-devel`` if you're using Python 3):
+RHEL/CentOS
+~~~~~~~~~~~
.. code-block:: console
$ sudo yum install gcc libffi-devel python-devel openssl-devel
-You should now be able to build and install cryptography with the usual
+
+Building
+~~~~~~~~
+
+You should now be able to build and install cryptography. To avoid getting
+the pre-built wheel on ``manylinux1`` distributions you'll need to use
+``--no-binary``.
.. code-block:: console
- $ pip install cryptography
+ $ pip install cryptography --no-binary cryptography
Using your own OpenSSL on Linux