Pycrypto

How do we install pycrypto to osmc on rasp. pi 2?

sudo apt-get install python-pip
sudo pip install pycrypto

Thanks
the first install was successful - sudo apt-get install python-pip
I got an error for the second one - sudo pip install pycrypto

copying lib/Crypto/SelfTest/PublicKey/test_RSA.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/PublicKey

copying lib/Crypto/SelfTest/PublicKey/test_ElGamal.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/PublicKey

creating build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random

copying lib/Crypto/SelfTest/Random/test__UserFriendlyRNG.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random

copying lib/Crypto/SelfTest/Random/__init__.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random

copying lib/Crypto/SelfTest/Random/test_random.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random

copying lib/Crypto/SelfTest/Random/test_rpoolcompat.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random

creating build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/Fortuna

copying lib/Crypto/SelfTest/Random/Fortuna/test_FortunaAccumulator.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/Fortuna

copying lib/Crypto/SelfTest/Random/Fortuna/__init__.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/Fortuna

copying lib/Crypto/SelfTest/Random/Fortuna/test_FortunaGenerator.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/Fortuna

copying lib/Crypto/SelfTest/Random/Fortuna/test_SHAd256.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/Fortuna

creating build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/OSRNG

copying lib/Crypto/SelfTest/Random/OSRNG/test_posix.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/OSRNG

copying lib/Crypto/SelfTest/Random/OSRNG/__init__.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/OSRNG

copying lib/Crypto/SelfTest/Random/OSRNG/test_generic.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/OSRNG

copying lib/Crypto/SelfTest/Random/OSRNG/test_winrandom.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/OSRNG

copying lib/Crypto/SelfTest/Random/OSRNG/test_fallback.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/OSRNG

copying lib/Crypto/SelfTest/Random/OSRNG/test_nt.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Random/OSRNG

creating build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/test_Counter.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/test_number.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/__init__.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/test_winrandom.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/test_asn1.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

creating build/lib.linux-armv7l-2.7/Crypto/SelfTest/Signature

copying lib/Crypto/SelfTest/Signature/__init__.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Signature

copying lib/Crypto/SelfTest/Signature/test_pkcs1_pss.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Signature

copying lib/Crypto/SelfTest/Signature/test_pkcs1_15.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Signature

creating build/lib.linux-armv7l-2.7/Crypto/Protocol

copying lib/Crypto/Protocol/Chaffing.py -> build/lib.linux-armv7l-2.7/Crypto/Protocol

copying lib/Crypto/Protocol/__init__.py -> build/lib.linux-armv7l-2.7/Crypto/Protocol

copying lib/Crypto/Protocol/AllOrNothing.py -> build/lib.linux-armv7l-2.7/Crypto/Protocol

copying lib/Crypto/Protocol/KDF.py -> build/lib.linux-armv7l-2.7/Crypto/Protocol

creating build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/_DSA.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/__init__.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/DSA.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/_slowmath.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/_RSA.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/ElGamal.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/pubkey.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/RSA.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

creating build/lib.linux-armv7l-2.7/Crypto/Signature

copying lib/Crypto/Signature/__init__.py -> build/lib.linux-armv7l-2.7/Crypto/Signature

copying lib/Crypto/Signature/PKCS1_PSS.py -> build/lib.linux-armv7l-2.7/Crypto/Signature

copying lib/Crypto/Signature/PKCS1_v1_5.py -> build/lib.linux-armv7l-2.7/Crypto/Signature

running build_ext

running build_configure

checking for gcc... no

checking for cc... no

checking for cl.exe... no

configure: error: in `/tmp/pip-build-Ihl9z6/pycrypto':

configure: error: no acceptable C compiler found in $PATH

See `config.log' for more details

Traceback (most recent call last):

  File "<string>", line 1, in <module>

  File "/tmp/pip-build-Ihl9z6/pycrypto/setup.py", line 456, in <module>

    core.setup(**kw)

  File "/usr/lib/python2.7/distutils/core.py", line 151, in setup

    dist.run_commands()

  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands

    self.run_command(cmd)

  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command

    cmd_obj.run()

  File "/usr/lib/python2.7/dist-packages/setuptools/command/install.py", line 61, in run

    return orig.install.run(self)

  File "/usr/lib/python2.7/distutils/command/install.py", line 601, in run

    self.run_command('build')

  File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command

    self.distribution.run_command(command)

  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command

    cmd_obj.run()

  File "/usr/lib/python2.7/distutils/command/build.py", line 128, in run

    self.run_command(cmd_name)

  File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command

    self.distribution.run_command(command)

  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command

    cmd_obj.run()

  File "/tmp/pip-build-Ihl9z6/pycrypto/setup.py", line 251, in run

    self.run_command(cmd_name)

  File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command

    self.distribution.run_command(command)

  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command

    cmd_obj.run()

  File "/tmp/pip-build-Ihl9z6/pycrypto/setup.py", line 278, in run

    raise RuntimeError("autoconf error")

RuntimeError: autoconf error

----------------------------------------
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-Ihl9z6/pycrypto/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-OdbzVd-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip-build-Ihl9z6/pycrypto
Storing debug log for failure in /root/.pip/pip.log

osmc@osmc:~$

sudo apt-get install -y rbp-userland-dev-osmc rbp-userland-osmc

then try that again

I did that now but getting the same error when trying sudo pip install pycrypto

Requirement already satisfied (use --upgrade to upgrade): pycrypto in /usr/lib/python2.7/dist-packages

weird i managed to install it previous with those packages

hell try just installing gcc then :smile:

(use --upgrade to upgrade): pycrypto in /usr/lib/python2.7/dist-packages
how would I do that upgrade…sorry I’m still learning this stuff
thanks for your patience

no thats what it types out if its installed

looks like you need gcc
sudo apt-get install gcc

Better to do apt-get install build-essential

Sam

osmc@osmc:~$ apt-get install build-essential
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
osmc@osmc:~$

sudo apt-get install build-essential

1 Like

that worked - thanks
I tried sudo pip install pycrypto

got this error

creating build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/test_Counter.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/test_number.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/init.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/test_winrandom.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

copying lib/Crypto/SelfTest/Util/test_asn1.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Util

creating build/lib.linux-armv7l-2.7/Crypto/SelfTest/Signature

copying lib/Crypto/SelfTest/Signature/init.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Signature

copying lib/Crypto/SelfTest/Signature/test_pkcs1_pss.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Signature

copying lib/Crypto/SelfTest/Signature/test_pkcs1_15.py -> build/lib.linux-armv7l-2.7/Crypto/SelfTest/Signature

creating build/lib.linux-armv7l-2.7/Crypto/Protocol

copying lib/Crypto/Protocol/Chaffing.py -> build/lib.linux-armv7l-2.7/Crypto/Protocol

copying lib/Crypto/Protocol/init.py -> build/lib.linux-armv7l-2.7/Crypto/Protocol

copying lib/Crypto/Protocol/AllOrNothing.py -> build/lib.linux-armv7l-2.7/Crypto/Protocol

copying lib/Crypto/Protocol/KDF.py -> build/lib.linux-armv7l-2.7/Crypto/Protocol

creating build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/_DSA.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/init.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/DSA.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/_slowmath.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/_RSA.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/ElGamal.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/pubkey.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

copying lib/Crypto/PublicKey/RSA.py -> build/lib.linux-armv7l-2.7/Crypto/PublicKey

creating build/lib.linux-armv7l-2.7/Crypto/Signature

copying lib/Crypto/Signature/init.py -> build/lib.linux-armv7l-2.7/Crypto/Signature

copying lib/Crypto/Signature/PKCS1_PSS.py -> build/lib.linux-armv7l-2.7/Crypto/Signature

copying lib/Crypto/Signature/PKCS1_v1_5.py -> build/lib.linux-armv7l-2.7/Crypto/Signature

running build_ext

running build_configure

checking for gcc… gcc

checking whether the C compiler works… yes

checking for C compiler default output file name… a.out

checking for suffix of executables…

checking whether we are cross compiling… no

checking for suffix of object files… o

checking whether we are using the GNU C compiler… yes

checking whether gcc accepts -g… yes

checking for gcc option to accept ISO C89… none needed

checking for __gmpz_init in -lgmp… no

checking for __gmpz_init in -lmpir… no

checking whether mpz_powm is declared… no

checking whether mpz_powm_sec is declared… no

checking how to run the C preprocessor… gcc -E

checking for grep that handles long lines and -e… /bin/grep

checking for egrep… /bin/grep -E

checking for ANSI C header files… yes

checking for sys/types.h… yes

checking for sys/stat.h… yes

checking for stdlib.h… yes

checking for string.h… yes

checking for memory.h… yes

checking for strings.h… yes

checking for inttypes.h… yes

checking for stdint.h… yes

checking for unistd.h… yes

checking for inttypes.h… (cached) yes

checking limits.h usability… yes

checking limits.h presence… yes

checking for limits.h… yes

checking stddef.h usability… yes

checking stddef.h presence… yes

checking for stddef.h… yes

checking for stdint.h… (cached) yes

checking for stdlib.h… (cached) yes

checking for string.h… (cached) yes

checking wchar.h usability… yes

checking wchar.h presence… yes

checking for wchar.h… yes

checking for inline… inline

checking for int16_t… yes

checking for int32_t… yes

checking for int64_t… yes

checking for int8_t… yes

checking for size_t… yes

checking for uint16_t… yes

checking for uint32_t… yes

checking for uint64_t… yes

checking for uint8_t… yes

checking for stdlib.h… (cached) yes

checking for GNU libc compatible malloc… yes

checking for memmove… yes

checking for memset… yes

configure: creating ./config.status

config.status: creating src/config.h

warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath.

building ‘Crypto.Hash._MD2’ extension

creating build/temp.linux-armv7l-2.7

creating build/temp.linux-armv7l-2.7/src

arm-linux-gnueabihf-gcc -pthread -fwrapv -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/usr/include/python2.7 -c src/MD2.c -o build/temp.linux-armv7l-2.7/src/MD2.o

src/MD2.c:31:20: fatal error: Python.h: No such file or directory

#include “Python.h”

                ^

compilation terminated.

error: command ‘arm-linux-gnueabihf-gcc’ failed with exit status 1


Cleaning up…
Command /usr/bin/python -c “import setuptools, tokenize;file=’/tmp/pip-build-M_UbeU/pycrypto/setup.py’;exec(compile(getattr(tokenize, ‘open’, open)(file).read().replace(’\r\n’, ‘\n’), file, ‘exec’))” install --record /tmp/pip-M7gF8k-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip-build-M_UbeU/pycrypto
Storing debug log for failure in /root/.pip/pip.log
osmc@osmc:~$

sudo apt-get install python-dev

Sam

Successfully installed pycrypto :grinning:
Thanks Sam, Toast and Dilligaf, ActionA - Awesome support
Have a great weekend

Thanks guys, i also was able to install pcrypto using the help on this thread last night.

1 Like