'Installing PyCrypto on Ubuntu - fatal error on build

Having looked at other similar threads, I still can't get pycrypto running.

I'm trying to get it working on my Ubuntu laptop - but I couldn't manage it on my Windows PC either.

I downloaded pycrypto-2.6, extracted it, and ran

    python setup.py build

but then this happened

warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath.
building 'Crypto.Hash._MD2' extension
gcc -pthread -fno-strict-aliasing -fwrapv -Wall -Wstrict-prototypes -fPIC -std=c99 -O3 - fomit-frame-pointer -Isrc/ -I/usr/include/python2.7 -c src/MD2.c -o build/temp.linux-i686-?2.7/src/MD2.o
src/MD2.c:31:20: fatal error: Python.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1

Would appreciate any help.



Solution 1:[1]

You need to install the Python development files. I believe this will do it:

sudo apt-get install python-dev

Solution 2:[2]

On Ubuntu, I needed some other packages for it to succeed:

apt-get install autoconf g++ python2.7-dev
pip install pycrypto

Solution 3:[3]

On Ubuntu and if you use Python 3.x you will need:

sudo apt-get install gcc python3-dev

you probably already have gcc but just in case if you are trying this command from Dockerfile with base image python:3.6.4-slim-jessie then you will also need gcc.

Solution 4:[4]

August 2021

For python 3.8 users run

sudo apt-get install python3.8-dev

and try to install pycrypto again

pip install pycrypto

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Ned Batchelder
Solution 2 Homer6
Solution 3 Luka Lopusina
Solution 4 babatunde adewole