MagicStack/httptools

Error: command 'cl.exe' failed: No such file or directory

ashengtx opened this issue · 2 comments

when I install httptools on windows via pip, I got error:

C:/>pip install httptools
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting httptools
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/1b/03/215969db11abe8741e9c266a4cbe803a372bd86dd35fa0084c4df6d4bd00/httptools-0.0.13.tar.gz (104kB)
     |████████████████████████████████| 112kB 731kB/s
Building wheels for collected packages: httptools
  Building wheel for httptools (setup.py) ... error
  ERROR: Complete output from command 'c:\program files\python37\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\ashengtx\\AppData\\Local\\Temp\\pip-install-e390hs44\\httptools\\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\ashengtx\AppData\Local\Temp\pip-wheel-0mti7e4p' --python-tag cp37:
  ERROR: running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib.win-amd64-3.7
  creating build\lib.win-amd64-3.7\httptools
  copying httptools\__init__.py -> build\lib.win-amd64-3.7\httptools
  creating build\lib.win-amd64-3.7\httptools\parser
  copying httptools\parser\errors.py -> build\lib.win-amd64-3.7\httptools\parser
  copying httptools\parser\__init__.py -> build\lib.win-amd64-3.7\httptools\parser
  running egg_info
  writing httptools.egg-info\PKG-INFO
  writing dependency_links to httptools.egg-info\dependency_links.txt
  writing top-level names to httptools.egg-info\top_level.txt
  reading manifest file 'httptools.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  writing manifest file 'httptools.egg-info\SOURCES.txt'
  copying httptools\parser\parser.c -> build\lib.win-amd64-3.7\httptools\parser
  running build_ext
  building 'httptools.parser.parser' extension
  creating build\temp.win-amd64-3.7
  creating build\temp.win-amd64-3.7\Release
  creating build\temp.win-amd64-3.7\Release\httptools
  creating build\temp.win-amd64-3.7\Release\httptools\parser
  creating build\temp.win-amd64-3.7\Release\vendor
  creating build\temp.win-amd64-3.7\Release\vendor\http-parser
  cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD "-Ic:\program files\python37\include" "-Ic:\program files\python37\include" /Tchttptools/parser/parser.c /Fobuild\temp.win-amd64-3.7\Release\httptools/parser/parser.obj -O2
  error: command 'cl.exe' failed: No such file or directory
  ----------------------------------------
  ERROR: Failed building wheel for httptools
  Running setup.py clean for httptools
Failed to build httptools
Installing collected packages: httptools
  Running setup.py install for httptools ... error
    ERROR: Complete output from command 'c:\program files\python37\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\ashengtx\\AppData\\Local\\Temp\\pip-install-e390hs44\\httptools\\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\ashengtx\AppData\Local\Temp\pip-record-edr9eisv\install-record.txt' --single-version-externally-managed --compile:
    ERROR: running install
    running build
    running build_py
    creating build
    creating build\lib.win-amd64-3.7
    creating build\lib.win-amd64-3.7\httptools
    copying httptools\__init__.py -> build\lib.win-amd64-3.7\httptools
    creating build\lib.win-amd64-3.7\httptools\parser
    copying httptools\parser\errors.py -> build\lib.win-amd64-3.7\httptools\parser
    copying httptools\parser\__init__.py -> build\lib.win-amd64-3.7\httptools\parser
    running egg_info
    writing httptools.egg-info\PKG-INFO
    writing dependency_links to httptools.egg-info\dependency_links.txt
    writing top-level names to httptools.egg-info\top_level.txt
    reading manifest file 'httptools.egg-info\SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    writing manifest file 'httptools.egg-info\SOURCES.txt'
    copying httptools\parser\parser.c -> build\lib.win-amd64-3.7\httptools\parser
    running build_ext
    building 'httptools.parser.parser' extension
    creating build\temp.win-amd64-3.7
    creating build\temp.win-amd64-3.7\Release
    creating build\temp.win-amd64-3.7\Release\httptools
    creating build\temp.win-amd64-3.7\Release\httptools\parser
    creating build\temp.win-amd64-3.7\Release\vendor
    creating build\temp.win-amd64-3.7\Release\vendor\http-parser
    cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD "-Ic:\program files\python37\include" "-Ic:\program files\python37\include" /Tchttptools/parser/parser.c /Fobuild\temp.win-amd64-3.7\Release\httptools/parser/parser.obj -O2
    error: command 'cl.exe' failed: No such file or directory
    ----------------------------------------
ERROR: Command "'c:\program files\python37\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\ashengtx\\AppData\\Local\\Temp\\pip-install-e390hs44\\httptools\\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\ashengtx\AppData\Local\Temp\pip-record-edr9eisv\install-record.txt' --single-version-externally-managed --compile" failed with error code 1 in C:\Users\ashengtx\AppData\Local\Temp\pip-install-e390hs44\httptools\

however, I have cl.exe installed

C:\>cl.exe
用于 x64 的 Microsoft (R) C/C++ 优化编译器 19.16.27027.1 版
版权所有(C) Microsoft Corporation。保留所有权利。

用法: cl [ 选项... ] 文件名... [ /link 链接选项... ]

how to solve this problem?

see #33, there's no wheel, so python tries to build it with C.

Wheels are now available.