Grpc: Cannot install grpcio under windows

Created on 15 Oct 2019  路  3Comments  路  Source: grpc/grpc

What version of gRPC and what language are you using?

The latest version and Python.

What operating system (Linux, Windows,...) and version?

Windows 10

What runtime / compiler are you using (e.g. python version or version of gcc)

Python 3.8.0 (tried both 32bit and 64 bits version)

What did you do?

Ran pip.exe install grpcio in cmd as an admin.

What did you expect to see?

A working install.

What did you see instead?

C:\WINDOWS\system32>pip.exe install grpcio
Collecting grpcio
  Using cached https://files.pythonhosted.org/packages/0c/7b/97fce81c5f9bbe989c2f11e9d179b953f56c765af9427005e7d2f58277aa/grpcio-1.24.1.tar.gz
Requirement already satisfied: six>=1.5.2 in c:\program files\python38\lib\site-packages (from grpcio) (1.12.0)
Installing collected packages: grpcio
    Running setup.py install for grpcio ... error
    ERROR: Command errored out with exit status 1:
     command: 'c:\program files\python38\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\<redacted>\\AppData\\Local\\Temp\\pip-install-ftgfn0pq\\grpcio\\setup.py'"'"'; __file__='"'"'C:\\Users\\<redacted>\\AppData\\Local\\Temp\\pip-install-ftgfn0pq\\grpcio\\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\<redacted>\AppData\Local\Temp\pip-record-9mh8227e\install-record.txt' --single-version-externally-managed --compile
         cwd: C:\Users\<redacted>\AppData\Local\Temp\pip-install-ftgfn0pq\grpcio\
    Complete output (62 lines):
    Found cython-generated files...
    running install
    running build
    running build_py
    running build_project_metadata
    creating python_build
    creating python_build\lib.win-amd64-3.8
    creating python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\_auth.py -> python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\_channel.py -> python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\_common.py -> python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\_compression.py -> python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\_grpcio_metadata.py -> python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\_interceptor.py -> python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\_plugin_wrapping.py -> python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\_server.py -> python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\_utilities.py -> python_build\lib.win-amd64-3.8\grpc
    copying src\python\grpcio\grpc\__init__.py -> python_build\lib.win-amd64-3.8\grpc
    creating python_build\lib.win-amd64-3.8\grpc\beta
    copying src\python\grpcio\grpc\beta\implementations.py -> python_build\lib.win-amd64-3.8\grpc\beta
    copying src\python\grpcio\grpc\beta\interfaces.py -> python_build\lib.win-amd64-3.8\grpc\beta
    copying src\python\grpcio\grpc\beta\utilities.py -> python_build\lib.win-amd64-3.8\grpc\beta
    copying src\python\grpcio\grpc\beta\_client_adaptations.py -> python_build\lib.win-amd64-3.8\grpc\beta
    copying src\python\grpcio\grpc\beta\_metadata.py -> python_build\lib.win-amd64-3.8\grpc\beta
    copying src\python\grpcio\grpc\beta\_server_adaptations.py -> python_build\lib.win-amd64-3.8\grpc\beta
    copying src\python\grpcio\grpc\beta\__init__.py -> python_build\lib.win-amd64-3.8\grpc\beta
    creating python_build\lib.win-amd64-3.8\grpc\experimental
    copying src\python\grpcio\grpc\experimental\gevent.py -> python_build\lib.win-amd64-3.8\grpc\experimental
    copying src\python\grpcio\grpc\experimental\session_cache.py -> python_build\lib.win-amd64-3.8\grpc\experimental
    copying src\python\grpcio\grpc\experimental\__init__.py -> python_build\lib.win-amd64-3.8\grpc\experimental
    creating python_build\lib.win-amd64-3.8\grpc\framework
    copying src\python\grpcio\grpc\framework\__init__.py -> python_build\lib.win-amd64-3.8\grpc\framework
    creating python_build\lib.win-amd64-3.8\grpc\_cython
    copying src\python\grpcio\grpc\_cython\__init__.py -> python_build\lib.win-amd64-3.8\grpc\_cython
    creating python_build\lib.win-amd64-3.8\grpc\framework\common
    copying src\python\grpcio\grpc\framework\common\cardinality.py -> python_build\lib.win-amd64-3.8\grpc\framework\common
    copying src\python\grpcio\grpc\framework\common\style.py -> python_build\lib.win-amd64-3.8\grpc\framework\common
    copying src\python\grpcio\grpc\framework\common\__init__.py -> python_build\lib.win-amd64-3.8\grpc\framework\common
    creating python_build\lib.win-amd64-3.8\grpc\framework\foundation
    copying src\python\grpcio\grpc\framework\foundation\abandonment.py -> python_build\lib.win-amd64-3.8\grpc\framework\foundation
    copying src\python\grpcio\grpc\framework\foundation\callable_util.py -> python_build\lib.win-amd64-3.8\grpc\framework\foundation
    copying src\python\grpcio\grpc\framework\foundation\future.py -> python_build\lib.win-amd64-3.8\grpc\framework\foundation
    copying src\python\grpcio\grpc\framework\foundation\logging_pool.py -> python_build\lib.win-amd64-3.8\grpc\framework\foundation
    copying src\python\grpcio\grpc\framework\foundation\stream.py -> python_build\lib.win-amd64-3.8\grpc\framework\foundation
    copying src\python\grpcio\grpc\framework\foundation\stream_util.py -> python_build\lib.win-amd64-3.8\grpc\framework\foundation
    copying src\python\grpcio\grpc\framework\foundation\__init__.py -> python_build\lib.win-amd64-3.8\grpc\framework\foundation
    creating python_build\lib.win-amd64-3.8\grpc\framework\interfaces
    copying src\python\grpcio\grpc\framework\interfaces\__init__.py -> python_build\lib.win-amd64-3.8\grpc\framework\interfaces
    creating python_build\lib.win-amd64-3.8\grpc\framework\interfaces\base
    copying src\python\grpcio\grpc\framework\interfaces\base\base.py -> python_build\lib.win-amd64-3.8\grpc\framework\interfaces\base
    copying src\python\grpcio\grpc\framework\interfaces\base\utilities.py -> python_build\lib.win-amd64-3.8\grpc\framework\interfaces\base
    copying src\python\grpcio\grpc\framework\interfaces\base\__init__.py -> python_build\lib.win-amd64-3.8\grpc\framework\interfaces\base
    creating python_build\lib.win-amd64-3.8\grpc\framework\interfaces\face
    copying src\python\grpcio\grpc\framework\interfaces\face\face.py -> python_build\lib.win-amd64-3.8\grpc\framework\interfaces\face
    copying src\python\grpcio\grpc\framework\interfaces\face\utilities.py -> python_build\lib.win-amd64-3.8\grpc\framework\interfaces\face
    copying src\python\grpcio\grpc\framework\interfaces\face\__init__.py -> python_build\lib.win-amd64-3.8\grpc\framework\interfaces\face
    creating python_build\lib.win-amd64-3.8\grpc\_cython\_cygrpc
    copying src\python\grpcio\grpc\_cython\_cygrpc\__init__.py -> python_build\lib.win-amd64-3.8\grpc\_cython\_cygrpc
    creating python_build\lib.win-amd64-3.8\grpc\_cython\_credentials
    copying src\python\grpcio\grpc\_cython\_credentials\roots.pem -> python_build\lib.win-amd64-3.8\grpc\_cython\_credentials
    running build_ext
    error: [WinError 2] The system cannot find the file specified
    ----------------------------------------
ERROR: Command errored out with exit status 1: 'c:\program files\python38\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\<redacted>\\AppData\\Local\\Temp\\pip-install-ftgfn0pq\\grpcio\\setup.py'"'"'; __file__='"'"'C:\\Users\\<redacted>\\AppData\\Local\\Temp\\pip-install-ftgfn0pq\\grpcio\\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\<redacted>\AppData\Local\Temp\pip-record-9mh8227e\install-record.txt' --single-version-externally-managed --compile Check the logs for full command output.

Anything else we should know about your project / environment?

kinbug lanPython platforWindows prioritP2

Most helpful comment

Okay thank you, I will try using 3.7

Maybe you could update the documentation "Supported Python Versions: Python >= 3.5" with a note about this?

Kind regards

All 3 comments

@Anorionil Unfortunately, we are not pre-compiling for 3.8 yet. If you can use Python 3.6 or 3.7, the problem should go away. https://pypi.org/project/grpcio/#files

I'm not recommending investigate the compilation of grpcio on Windows, because it is not easy to get it right.

Okay thank you, I will try using 3.7

Maybe you could update the documentation "Supported Python Versions: Python >= 3.5" with a note about this?

Kind regards

Having the same issue, my version is 3.8 !!!

Was this page helpful?
0 / 5 - 0 ratings