install_narrative.sh pycrypto build fails but is ignored
MrCreosote opened this issue · 1 comments
MrCreosote commented
- pycrypto doesn't build correctly given the install instructions
- the script should error out if a dependency fails to install.
Building wheel for pycrypto (setup.py): started
Building wheel for pycrypto (setup.py): finished with status 'error'
error: subprocess-exited-with-error
× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [213 lines of output]
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-cpython-39
creating build/lib.linux-x86_64-cpython-39/Crypto
copying lib/Crypto/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto
copying lib/Crypto/pct_warnings.py -> build/lib.linux-x86_64-cpython-39/Crypto
creating build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/HMAC.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/hashalgo.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/SHA256.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/SHA.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/MD2.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/SHA512.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/SHA384.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/SHA224.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/RIPEMD.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/MD5.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
copying lib/Crypto/Hash/MD4.py -> build/lib.linux-x86_64-cpython-39/Crypto/Hash
creating build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/PKCS1_v1_5.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/blockalgo.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/ARC2.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/AES.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/DES.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/ARC4.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/CAST.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/DES3.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/Blowfish.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/XOR.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
copying lib/Crypto/Cipher/PKCS1_OAEP.py -> build/lib.linux-x86_64-cpython-39/Crypto/Cipher
creating build/lib.linux-x86_64-cpython-39/Crypto/Util
copying lib/Crypto/Util/Counter.py -> build/lib.linux-x86_64-cpython-39/Crypto/Util
copying lib/Crypto/Util/_number_new.py -> build/lib.linux-x86_64-cpython-39/Crypto/Util
copying lib/Crypto/Util/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/Util
copying lib/Crypto/Util/RFC1751.py -> build/lib.linux-x86_64-cpython-39/Crypto/Util
copying lib/Crypto/Util/asn1.py -> build/lib.linux-x86_64-cpython-39/Crypto/Util
copying lib/Crypto/Util/number.py -> build/lib.linux-x86_64-cpython-39/Crypto/Util
copying lib/Crypto/Util/py3compat.py -> build/lib.linux-x86_64-cpython-39/Crypto/Util
copying lib/Crypto/Util/winrandom.py -> build/lib.linux-x86_64-cpython-39/Crypto/Util
copying lib/Crypto/Util/randpool.py -> build/lib.linux-x86_64-cpython-39/Crypto/Util
creating build/lib.linux-x86_64-cpython-39/Crypto/Random
copying lib/Crypto/Random/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random
copying lib/Crypto/Random/random.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random
copying lib/Crypto/Random/_UserFriendlyRNG.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random
creating build/lib.linux-x86_64-cpython-39/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/FortunaAccumulator.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/FortunaGenerator.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/SHAd256.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random/Fortuna
creating build/lib.linux-x86_64-cpython-39/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/posix.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/rng_base.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/fallback.py -> build/lib.linux-x86_64-cpython-39/Crypto/Random/OSRNG
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest
copying lib/Crypto/SelfTest/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest
copying lib/Crypto/SelfTest/st_common.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_DES3.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_AES.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_CAST.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_XOR.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/common.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_ARC4.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_pkcs1_15.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_DES.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_pkcs1_oaep.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_ARC2.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_Blowfish.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Cipher
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA256.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/common.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_MD2.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_MD5.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA384.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_HMAC.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA512.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_MD4.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA224.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_RIPEMD.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Hash
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_rfc1751.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_chaffing.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_KDF.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_AllOrNothing.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Protocol
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_RSA.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_ElGamal.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_importKey.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_DSA.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/PublicKey
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/test_random.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/test__UserFriendlyRNG.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/test_rpoolcompat.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/test_FortunaAccumulator.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/test_FortunaGenerator.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/test_SHAd256.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/Fortuna
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_posix.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_generic.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_winrandom.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_fallback.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_nt.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Random/OSRNG
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_number.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_asn1.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_Counter.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_winrandom.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Util
creating build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Signature
copying lib/Crypto/SelfTest/Signature/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Signature
copying lib/Crypto/SelfTest/Signature/test_pkcs1_pss.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Signature
copying lib/Crypto/SelfTest/Signature/test_pkcs1_15.py -> build/lib.linux-x86_64-cpython-39/Crypto/SelfTest/Signature
creating build/lib.linux-x86_64-cpython-39/Crypto/Protocol
copying lib/Crypto/Protocol/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/Protocol
copying lib/Crypto/Protocol/Chaffing.py -> build/lib.linux-x86_64-cpython-39/Crypto/Protocol
copying lib/Crypto/Protocol/KDF.py -> build/lib.linux-x86_64-cpython-39/Crypto/Protocol
copying lib/Crypto/Protocol/AllOrNothing.py -> build/lib.linux-x86_64-cpython-39/Crypto/Protocol
creating build/lib.linux-x86_64-cpython-39/Crypto/PublicKey
copying lib/Crypto/PublicKey/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/PublicKey
copying lib/Crypto/PublicKey/pubkey.py -> build/lib.linux-x86_64-cpython-39/Crypto/PublicKey
copying lib/Crypto/PublicKey/DSA.py -> build/lib.linux-x86_64-cpython-39/Crypto/PublicKey
copying lib/Crypto/PublicKey/_RSA.py -> build/lib.linux-x86_64-cpython-39/Crypto/PublicKey
copying lib/Crypto/PublicKey/ElGamal.py -> build/lib.linux-x86_64-cpython-39/Crypto/PublicKey
copying lib/Crypto/PublicKey/RSA.py -> build/lib.linux-x86_64-cpython-39/Crypto/PublicKey
copying lib/Crypto/PublicKey/_slowmath.py -> build/lib.linux-x86_64-cpython-39/Crypto/PublicKey
copying lib/Crypto/PublicKey/_DSA.py -> build/lib.linux-x86_64-cpython-39/Crypto/PublicKey
creating build/lib.linux-x86_64-cpython-39/Crypto/Signature
copying lib/Crypto/Signature/__init__.py -> build/lib.linux-x86_64-cpython-39/Crypto/Signature
copying lib/Crypto/Signature/PKCS1_v1_5.py -> build/lib.linux-x86_64-cpython-39/Crypto/Signature
copying lib/Crypto/Signature/PKCS1_PSS.py -> build/lib.linux-x86_64-cpython-39/Crypto/Signature
warning: PCTBuildPy: byte-compiling is disabled, skipping.
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... /usr/bin/grep
checking for egrep... /usr/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-x86_64-cpython-39
creating build/temp.linux-x86_64-cpython-39/src
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -fwrapv -Wall -fstack-protector-strong -Wformat -Werror=format-security -fPIC -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/home/mrcreosote/.local/share/virtualenvs/narrative-3sLaH9DD/include -I/usr/include/python3.9 -c src/MD2.c -o build/temp.linux-x86_64-cpython-39/src/MD2.o
src/MD2.c:31:10: fatal error: Python.h: No such file or directory
31 | #include "Python.h"
| ^~~~~~~~~~
compilation terminated.
error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
[end of output]
MrCreosote commented
Workaround on ubuntu is installing the python dev headers:
sudo apt install python3.9-dev
in my case