OpenSSL issues encountered by pip cryptography

pip install -r requirements.txt encountered a bug

Collecting cryptography==2.7
  Downloading cryptography-2.7.tar.gz (495 kB)
     ------------------------------------- 495.9/495.9 kB 15.7 MB/s eta 0:00: 00
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting asn1crypto>=0.21.0 (from cryptography==2.7)
  Using cached asn1crypto-1.5.1-py2.py3-none-any.whl (105 kB)
Requirement already satisfied: six>=1.4.1 in d:\workproject\2023\7_11\bkom\venv\lib\site-packages (from cryptography==2.7) (1.16.0)
Requirement already satisfied: cffi!=1.11.3,>=1.8 in d:\workproject\2023\7_11\bkom\venv\lib\site-packages (from cryptography==2.7) (1.15.1)
Requirement already satisfied: pycparser in d:\workproject\2023\7_11\bkom\venv\lib\site-packages (from cffi!=1.11.3,>=1.8->cryptography==2.7) (2.21)
Building wheels for collected packages: cryptography
  Building wheel for cryptography (pyproject.toml): started
  Building wheel for cryptography (pyproject.toml): finished with status 'error'
Failed to build cryptography

  error: subprocess-exited-with-error
  
  Building wheel for cryptography (pyproject.toml) did not run successfully.
  exit code: 1
  
  [144 lines of output]
  <string>:14: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib.win-amd64-cpython-39
  creating build\lib.win-amd64-cpython-39\cryptography
  copying src\cryptography\exceptions.py -> build\lib.win-amd64-cpython-39\cryptography
  copying src\cryptography\fernet.py -> build\lib.win-amd64-cpython-39\cryptography
  copying src\cryptography\utils.py -> build\lib.win-amd64-cpython-39\cryptography
  copying src\cryptography\__about__.py -> build\lib.win-amd64-cpython-39\cryptography
  copying src\cryptography\__init__.py -> build\lib.win-amd64-cpython-39\cryptography
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat
  copying src\cryptography\hazmat\_oid.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat
  copying src\cryptography\hazmat\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat
  creating build\lib.win-amd64-cpython-39\cryptography\x509
  copying src\cryptography\x509\base.py -> build\lib.win-amd64-cpython-39\cryptography\x509
  copying src\cryptography\x509\certificate_transparency.py -> build\lib.win-amd64-cpython-39\cryptography\x509
  copying src\cryptography\x509\extensions.py -> build\lib.win-amd64-cpython-39\cryptography\x509
  copying src\cryptography\x509\general_name.py -> build\lib.win-amd64-cpython-39\cryptography\x509
  copying src\cryptography\x509\
ame.py -> build\lib.win-amd64-cpython-39\cryptography\x509
  copying src\cryptography\x509\ocsp.py -> build\lib.win-amd64-cpython-39\cryptography\x509
  copying src\cryptography\x509\oid.py -> build\lib.win-amd64-cpython-39\cryptography\x509
  copying src\cryptography\x509\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\x509
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\backends
  copying src\cryptography\hazmat\backends\interfaces.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends
  copying src\cryptography\hazmat\backends\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\bindings
  copying src\cryptography\hazmat\bindings\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\bindings
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives
  copying src\cryptography\hazmat\primitives\cmac.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives
  copying src\cryptography\hazmat\primitives\constant_time.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives
  copying src\cryptography\hazmat\primitives\hashes.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives
  copying src\cryptography\hazmat\primitives\hmac.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives
  copying src\cryptography\hazmat\primitives\keywrap.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives
  copying src\cryptography\hazmat\primitives\padding.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives
  copying src\cryptography\hazmat\primitives\poly1305.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives
  copying src\cryptography\hazmat\primitives\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\aead.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\backend.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\ciphers.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\cmac.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\decode_asn1.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\dh.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\dsa.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\ec.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\ed25519.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\ed448.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\encode_asn1.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\hashes.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\hmac.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\ocsp.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\poly1305.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\rsa.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\utils.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\x25519.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\x448.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\x509.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  copying src\cryptography\hazmat\backends\openssl\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\backends\openssl
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\bindings\openssl
  copying src\cryptography\hazmat\bindings\openssl\binding.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\bindings\openssl
  copying src\cryptography\hazmat\bindings\openssl\_conditional.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\bindings\openssl
  copying src\cryptography\hazmat\bindings\openssl\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\bindings\openssl
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\dh.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\dsa.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\ec.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\ed25519.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\ed448.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\padding.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\rsa.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\utils.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\x25519.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\x448.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  copying src\cryptography\hazmat\primitives\asymmetric\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\asymmetric
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\ciphers
  copying src\cryptography\hazmat\primitives\ciphers\aead.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\ciphers
  copying src\cryptography\hazmat\primitives\ciphers\algorithms.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\ciphers
  copying src\cryptography\hazmat\primitives\ciphers\base.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\ciphers
  copying src\cryptography\hazmat\primitives\ciphers\modes.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\ciphers
  copying src\cryptography\hazmat\primitives\ciphers\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\ciphers
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\kdf
  copying src\cryptography\hazmat\primitives\kdf\concatkdf.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\kdf
  copying src\cryptography\hazmat\primitives\kdf\hkdf.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\kdf
  copying src\cryptography\hazmat\primitives\kdf\kbkdf.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\kdf
  copying src\cryptography\hazmat\primitives\kdf\pbkdf2.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\kdf
  copying src\cryptography\hazmat\primitives\kdf\scrypt.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\kdf
  copying src\cryptography\hazmat\primitives\kdf\x963kdf.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\kdf
  copying src\cryptography\hazmat\primitives\kdf\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\kdf
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\serialization
  copying src\cryptography\hazmat\primitives\serialization\base.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\serialization
  copying src\cryptography\hazmat\primitives\serialization\pkcs12.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\serialization
  copying src\cryptography\hazmat\primitives\serialization\ssh.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\serialization
  copying src\cryptography\hazmat\primitives\serialization\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\serialization
  creating build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\twofactor
  copying src\cryptography\hazmat\primitives\twofactor\hotp.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\twofactor
  copying src\cryptography\hazmat\primitives\twofactor\totp.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\twofactor
  copying src\cryptography\hazmat\primitives\twofactor\utils.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\twofactor
  copying src\cryptography\hazmat\primitives\twofactor\__init__.py -> build\lib.win-amd64-cpython-39\cryptography\hazmat\primitives\twofactor
  running egg_info
  writing src\cryptography.egg-info\PKG-INFO
  writing dependency_links to src\cryptography.egg-info\dependency_links.txt
  writing requirements to src\cryptography.egg-info\requires.txt
  writing top-level names to src\cryptography.egg-info\top_level.txt
  reading manifest file 'src\cryptography.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  no previously-included directories found matching 'docs\_build'
  warning: no previously-included files found matching 'vectors'
  warning: no previously-included files matching '*' found under directory 'vectors'
  warning: no previously-included files found matching 'azure-pipelines.yml'
  warning: no previously-included files found matching '.azure-pipelines'
  warning: no previously-included files found matching '.travis.yml'
  warning: no previously-included files found matching '.travis'
  warning: no previously-included files matching '*' found under directory '.azure-pipelines'
  warning: no previously-included files matching '*' found under directory '.travis'
  warning: no previously-included files found matching 'release.py'
  warning: no previously-included files found matching '.coveragerc'
  warning: no previously-included files found matching 'codecov.yml'
  warning: no previously-included files found matching 'dev-requirements.txt'
  warning: no previously-included files found matching 'rtd-requirements.txt'
  warning: no previously-included files found matching 'tox.ini'
  adding license file 'LICENSE'
  adding license file 'LICENSE.APACHE'
  adding license file 'LICENSE.BSD'
  adding license file 'LICENSE.PSF'
  adding license file 'AUTHORS.rst'
  writing manifest file 'src\cryptography.egg-info\SOURCES.txt'
  warning: build_py: byte-compiling is disabled, skipping.
  
  running build_ext
  generating cffi module 'build\temp.win-amd64-cpython-39\Release\_padding.c'
  creating build\temp.win-amd64-cpython-39
  creating build\temp.win-amd64-cpython-39\Release
  generating cffi module 'build\temp.win-amd64-cpython-39\Release\_constant_time.c'
  generating cffi module 'build\temp.win-amd64-cpython-39\Release\_openssl.c'
  building '_openssl' extension
  creating build\temp.win-amd64-cpython-39\Release\build
  creating build\temp.win-amd64-cpython-39\Release\build\temp.win-amd64-cpython-39
  creating build\temp.win-amd64-cpython-39\Release\build\temp.win-amd64-cpython-39\Release
  "D:\software_download\Microsoft C++ Build Tools\VC\Tools\MSVC\14.33.31629\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -ID: \workProject\2023\7_11\bkom\venv\include -IC:\Users\xuandonglai\AppData\Local\Programs\Python\Python39\include -IC:\Users\xuandonglai\AppData\Local\Programs\Python\Python39\Include "-ID:\software_download\Microsoft C++ Build Tools\VC\Tools\MSVC\14.33.31629\include" "-ID:\software_download\Microsoft C++ Build Tools\VC\Auxiliary\VS\include" "- IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um" "- IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt" /Tcbuild\temp.win-amd64-cpython-39\Release\_openssl.c /Fobuild\temp.win -amd64-cpython-39\Release\build\temp.win-amd64-cpython-39\Release\_openssl.obj
  _openssl.c
  build\temp.win-amd64-cpython-39\Release\_openssl.c(575): fatal error C1083: Unable to open include file: "openssl/opensslv.h": No such file or directory
  error: command 'D:\software_download\Microsoft C++ Build Tools\VC\Tools\MSVC\14.33.31629\bin\HostX86\x64\cl.exe' failed with exit code 2
  [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for cryptography
ERROR: Could not build wheels for cryptography, which is required to install pyproject.toml-based projects

Grab the keyword OpenSSL at a glance. If it is a Windows 64-bit system, download the “Win64 OpenSSL” installer.

Win32/Win64 OpenSSL Installer for Windows – Shining Light Productions (slproweb.com)icon-default.png?t=N7T8https://slproweb.com/products/Win32OpenSSL.html Directly install openssl installation package It is the fastest and most convenient method.

Just download the Win64 openssl version and select the folder.

Next

“Select Additional Tasks” allows you to choose where to copy the OpenSSL dll. It is recommended not to copy it to the system directory. If the openssl version used by other software is different from the version you installed, the software may not be usable. (This explanation is referenced from: http://t.csdn.cn/zDOTd)

ThenInstall

If you don’t have money (donation requires you to donate money), you can’t choose anything.

Make sure environment variables and CMD are accessible

openssl version

The knowledge points of the article match the official knowledge files, and you can further learn related knowledge. Algorithm skill tree Home page Overview 51935 people are learning the system