Ошибка при установке eventlet на Python

Возникла необходимость установить библиотеку eventlet. Сначала вылетала ошибка при установке через pip, где нужно было установить VS C++ BuildTools. Устранил ее, но появилась новая.

Requirement already satisfied: eventlet in c:\users\user\global\flask_app\venv\lib\site-packages\eventlet-0.25.1-py3.8.egg (0.25.1)
Requirement already satisfied: dnspython>=1.15.0 in c:\users\user\global\flask_app\venv\lib\site-packages (from eventlet) (1.16.0)
Collecting greenlet>=0.3
  Using cached greenlet-0.4.15.tar.gz (59 kB)
Requirement already satisfied: monotonic>=1.4 in c:\users\user\global\flask_app\venv\lib\site-packages (from eventlet) (1.5)
Requirement already satisfied: six>=1.10.0 in c:\users\user\global\flask_app\venv\lib\site-packages (from eventlet) (1.14.0)
Building wheels for collected packages: greenlet
  Building wheel for greenlet (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: 'c:\users\user\global\flask_app\venv\scripts\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\User\\AppData\\Local\\Temp\\pip-install-ely6dpqt\\greenlet\\setup.py'"'"'; __file__='"'"'C:\\Users\\User\\AppData\\Local\\Temp\\
pip-install-ely6dpqt\\greenlet\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\User\AppData\Local\Temp\pip-wheel-5q
3fw3yi'
       cwd: C:\Users\User\AppData\Local\Temp\pip-install-ely6dpqt\greenlet\
  Complete output (51 lines):
  running bdist_wheel
  running build
  running build_ext
  building 'greenlet' extension
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "C:\Users\User\AppData\Local\Temp\pip-install-ely6dpqt\greenlet\setup.py", line 71, in <module>
      setup(
    File "c:\users\user\global\flask_app\venv\lib\site-packages\setuptools\__init__.py", line 145, in setup
      return distutils.core.setup(**attrs)
    File "c:\program files (x86)\python38-32\Lib\distutils\core.py", line 148, in setup
      dist.run_commands()
    File "c:\program files (x86)\python38-32\Lib\distutils\dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "c:\program files (x86)\python38-32\Lib\distutils\dist.py", line 985, in run_command
      cmd_obj.run()
    File "c:\users\user\global\flask_app\venv\lib\site-packages\wheel\bdist_wheel.py", line 223, in run
      self.run_command('build')
    File "c:\program files (x86)\python38-32\Lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "c:\program files (x86)\python38-32\Lib\distutils\dist.py", line 985, in run_command
      cmd_obj.run()
    File "c:\program files (x86)\python38-32\Lib\distutils\command\build.py", line 135, in run
      self.run_command(cmd_name)
    File "c:\program files (x86)\python38-32\Lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "c:\program files (x86)\python38-32\Lib\distutils\dist.py", line 985, in run_command
      cmd_obj.run()
    File "c:\program files (x86)\python38-32\Lib\distutils\command\build_ext.py", line 340, in run
      self.build_extensions()
    File "c:\program files (x86)\python38-32\Lib\distutils\command\build_ext.py", line 449, in build_extensions
      self._build_extensions_serial()
    File "c:\program files (x86)\python38-32\Lib\distutils\command\build_ext.py", line 474, in _build_extensions_serial
      self.build_extension(ext)
    File "C:\Users\User\AppData\Local\Temp\pip-install-ely6dpqt\greenlet\my_build_ext.py", line 42, in build_extension
      _build_ext.build_extension(self, ext)
    File "c:\program files (x86)\python38-32\Lib\distutils\command\build_ext.py", line 528, in build_extension
      objects = self.compiler.compile(sources,
    File "c:\program files (x86)\python38-32\Lib\distutils\_msvccompiler.py", line 360, in compile
      self.initialize()
    File "c:\program files (x86)\python38-32\Lib\distutils\_msvccompiler.py", line 253, in initialize
      vc_env = _get_vc_env(plat_spec)
    File "c:\users\user\global\flask_app\venv\lib\site-packages\setuptools\msvc.py", line 171, in msvc14_get_vc_env
      return EnvironmentInfo(plat_spec, vc_min_ver=14.0).return_env()
    File "c:\users\user\global\flask_app\venv\lib\site-packages\setuptools\msvc.py", line 1592, in return_env
      self.UCRTIncludes,
    File "c:\users\user\global\flask_app\venv\lib\site-packages\setuptools\msvc.py", line 1508, in UCRTIncludes
      include = join(self.si.UniversalCRTSdkDir, 'include')
    File "c:\users\user\global\flask_app\venv\lib\ntpath.py", line 78, in join
      path = os.fspath(path)
  TypeError: expected str, bytes or os.PathLike object, not NoneType
  ----------------------------------------
  ERROR: Failed building wheel for greenlet
  Running setup.py clean for greenlet
Failed to build greenlet
Installing collected packages: greenlet
    Running setup.py install for greenlet ... error
    ERROR: Command errored out with exit status 1:
     command: 'c:\users\user\global\flask_app\venv\scripts\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\User\\AppData\\Local\\Temp\\pip-install-ely6dpqt\\greenlet\\setup.py'"'"'; __file__='"'"'C:\\Users\\User\\AppData\\Local\\Temp
\\pip-install-ely6dpqt\\greenlet\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\User\AppData\Local\Temp\pip-reco
rd-dqboxgu8\install-record.txt' --single-version-externally-managed --compile --install-headers 'c:\users\user\global\flask_app\venv\include\site\python3.8\greenlet'
         cwd: C:\Users\User\AppData\Local\Temp\pip-install-ely6dpqt\greenlet\
    Complete output (53 lines):
    running install
    running build
    running build_ext
    building 'greenlet' extension
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\User\AppData\Local\Temp\pip-install-ely6dpqt\greenlet\setup.py", line 71, in <module>
        setup(
      File "c:\users\user\global\flask_app\venv\lib\site-packages\setuptools\__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "c:\program files (x86)\python38-32\Lib\distutils\core.py", line 148, in setup
        dist.run_commands()
      File "c:\program files (x86)\python38-32\Lib\distutils\dist.py", line 966, in run_commands
        self.run_command(cmd)
      File "c:\program files (x86)\python38-32\Lib\distutils\dist.py", line 985, in run_command
        cmd_obj.run()
      File "c:\users\user\global\flask_app\venv\lib\site-packages\setuptools\command\install.py", line 61, in run
        return orig.install.run(self)
      File "c:\program files (x86)\python38-32\Lib\distutils\command\install.py", line 545, in run
        self.run_command('build')
      File "c:\program files (x86)\python38-32\Lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "c:\program files (x86)\python38-32\Lib\distutils\dist.py", line 985, in run_command
        cmd_obj.run()
      File "c:\program files (x86)\python38-32\Lib\distutils\command\build.py", line 135, in run
        self.run_command(cmd_name)
      File "c:\program files (x86)\python38-32\Lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "c:\program files (x86)\python38-32\Lib\distutils\dist.py", line 985, in run_command
        cmd_obj.run()
      File "c:\program files (x86)\python38-32\Lib\distutils\command\build_ext.py", line 340, in run
        self.build_extensions()
      File "c:\program files (x86)\python38-32\Lib\distutils\command\build_ext.py", line 449, in build_extensions
        self._build_extensions_serial()
      File "c:\program files (x86)\python38-32\Lib\distutils\command\build_ext.py", line 474, in _build_extensions_serial
        self.build_extension(ext)
      File "C:\Users\User\AppData\Local\Temp\pip-install-ely6dpqt\greenlet\my_build_ext.py", line 42, in build_extension
        _build_ext.build_extension(self, ext)
      File "c:\program files (x86)\python38-32\Lib\distutils\command\build_ext.py", line 528, in build_extension
        objects = self.compiler.compile(sources,
      File "c:\program files (x86)\python38-32\Lib\distutils\_msvccompiler.py", line 360, in compile
        self.initialize()
      File "c:\program files (x86)\python38-32\Lib\distutils\_msvccompiler.py", line 253, in initialize
        vc_env = _get_vc_env(plat_spec)
      File "c:\users\user\global\flask_app\venv\lib\site-packages\setuptools\msvc.py", line 171, in msvc14_get_vc_env
        return EnvironmentInfo(plat_spec, vc_min_ver=14.0).return_env()
      File "c:\users\user\global\flask_app\venv\lib\site-packages\setuptools\msvc.py", line 1592, in return_env
        self.UCRTIncludes,
      File "c:\users\user\global\flask_app\venv\lib\site-packages\setuptools\msvc.py", line 1508, in UCRTIncludes
        include = join(self.si.UniversalCRTSdkDir, 'include')
      File "c:\users\user\global\flask_app\venv\lib\ntpath.py", line 78, in join
        path = os.fspath(path)
    TypeError: expected str, bytes or os.PathLike object, not NoneType
    ----------------------------------------
ERROR: Command errored out with exit status 1: 'c:\users\user\global\flask_app\venv\scripts\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\User\\AppData\\Local\\Temp\\pip-install-ely6dpqt\\greenlet\\setup.py'"'"'; __file__='"'"'C:\\
Users\\User\\AppData\\Local\\Temp\\pip-install-ely6dpqt\\greenlet\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users
\User\AppData\Local\Temp\pip-record-dqboxgu8\install-record.txt' --single-version-externally-managed --compile --install-headers 'c:\users\user\global\flask_app\venv\include\site\python3.8\greenlet' Check the logs for full command output.

P.S.: устанавливал тремя способами - через pip, easy_installer и просто пытался выполнить setup.py скачанного заранее с гита пакета.


Ответы (1 шт):

Автор решения: Brain of madness

В общем, в ответах, которые нашел в гугле, кто-то дал ссылку на битый VS C++ Build Tools. Нашел нормальный и все удалось установить. Ссылку прилагаю - https://go.microsoft.com/fwlink/?LinkId=691126

→ Ссылка