python-3.xwindowsfailed-installation

Failed building wheel for cchardet when installing datadotworld


I got an error when installing datadotworld module involving cchardet. I have already installed that package but I am still getting this error. Please help me find a solution. Here is the the full error message:

  Building wheels for collected packages: cchardet
  Building wheel for cchardet (setup.py) ... error
  Complete output from command c:\users\hp\appdata\local\programs\python\python37-32\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\hp\\AppData\\Local\\Temp\\pip-install-twscuztm\\cchardet\\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\hp\AppData\Local\Temp\pip-wheel-xemo8o53 --python-tag cp37:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib.win32-3.7
  creating build\lib.win32-3.7\cchardet
  copying src\cchardet\version.py -> build\lib.win32-3.7\cchardet
  copying src\cchardet\__init__.py -> build\lib.win32-3.7\cchardet
  running build_ext
  building 'cchardet._cchardet' extension
  creating build\temp.win32-3.7
  creating build\temp.win32-3.7\Release
  creating build\temp.win32-3.7\Release\src
  creating build\temp.win32-3.7\Release\src\cchardet
  creating build\temp.win32-3.7\Release\src\ext
  creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect
  creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla
  creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla\extensions
  creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla\extensions\universalchardet
  creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla\extensions\universalchardet\src
  creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla\extensions\universalchardet\src\base
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX86\x86\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DWIN32=1 -Isrc\ext\libcharsetdetect/mozilla/extensions/universalchardet/src/base/ -Isrc\ext\libcharsetdetect/nspr-emu/ -Isrc\ext\libcharsetdetect/ -Ic:\users\hp\appdata\local\programs\python\python37-32\include -Ic:\users\hp\appdata\local\programs\python\python37-32\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\cppwinrt" /EHsc /Tpsrc\cchardet\_cchardet.cpp /Fobuild\temp.win32-3.7\Release\src\cchardet\_cchardet.obj
  _cchardet.cpp
  src\ext\libcharsetdetect/charsetdetect.h(5): warning C4068: unknown pragma
  src\ext\libcharsetdetect/charsetdetect.h(31): warning C4068: unknown pragma
  src\cchardet\_cchardet.cpp(2351): error C2197: 'PyObject *(__cdecl *)(PyObject *,PyObject *const *,Py_ssize_t)': too many arguments for call
  error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.14.26428\\bin\\HostX86\\x86\\cl.exe' failed with exit status 2

  ----------------------------------------
  Failed building wheel for cchardet
  Running setup.py clean for cchardet
Failed to build cchardet
Installing collected packages: pyflakes, pycodestyle, flake8, cchardet, tabulator, jsontableschema, datapackage, configparser, datadotworld
  Found existing installation: cchardet 2.1.4
    Uninstalling cchardet-2.1.4:
      Successfully uninstalled cchardet-2.1.4
  Running setup.py install for cchardet ... error
    Complete output from command c:\users\hp\appdata\local\programs\python\python37-32\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\hp\\AppData\\Local\\Temp\\pip-install-twscuztm\\cchardet\\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\hp\AppData\Local\Temp\pip-record-52dns6_y\install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_py
    creating build
    creating build\lib.win32-3.7
    creating build\lib.win32-3.7\cchardet
    copying src\cchardet\version.py -> build\lib.win32-3.7\cchardet
    copying src\cchardet\__init__.py -> build\lib.win32-3.7\cchardet
    running build_ext
    building 'cchardet._cchardet' extension
    creating build\temp.win32-3.7
    creating build\temp.win32-3.7\Release
    creating build\temp.win32-3.7\Release\src
    creating build\temp.win32-3.7\Release\src\cchardet
    creating build\temp.win32-3.7\Release\src\ext
    creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect
    creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla
    creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla\extensions
    creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla\extensions\universalchardet
    creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla\extensions\universalchardet\src
    creating build\temp.win32-3.7\Release\src\ext\libcharsetdetect\mozilla\extensions\universalchardet\src\base
    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX86\x86\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DWIN32=1 -Isrc\ext\libcharsetdetect/mozilla/extensions/universalchardet/src/base/ -Isrc\ext\libcharsetdetect/nspr-emu/ -Isrc\ext\libcharsetdetect/ -Ic:\users\hp\appdata\local\programs\python\python37-32\include -Ic:\users\hp\appdata\local\programs\python\python37-32\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\cppwinrt" /EHsc /Tpsrc\cchardet\_cchardet.cpp /Fobuild\temp.win32-3.7\Release\src\cchardet\_cchardet.obj
    _cchardet.cpp
    src\ext\libcharsetdetect/charsetdetect.h(5): warning C4068: unknown pragma
    src\ext\libcharsetdetect/charsetdetect.h(31): warning C4068: unknown pragma
    src\cchardet\_cchardet.cpp(2351): error C2197: 'PyObject *(__cdecl *)(PyObject *,PyObject *const *,Py_ssize_t)': too many arguments for call
    error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.14.26428\\bin\\HostX86\\x86\\cl.exe' failed with exit status 2

    ----------------------------------------
  Rolling back uninstall of cchardet
  Moving to c:\users\hp\appdata\local\programs\python\python37-32\lib\site-packages\cchardet-2.1.4.dist-info\
   from c:\users\hp\appdata\local\programs\python\python37-32\lib\site-packages\~chardet-2.1.4.dist-info
  Moving to c:\users\hp\appdata\local\programs\python\python37-32\lib\site-packages\cchardet\
   from c:\users\hp\appdata\local\programs\python\python37-32\lib\site-packages\~chardet
  Moving to c:\users\hp\appdata\local\programs\python\python37-32\scripts\cchardetect
   from C:\Users\hp\AppData\Local\Temp\pip-uninstall-hbm61cf2\cchardetect
Command "c:\users\hp\appdata\local\programs\python\python37-32\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\hp\\AppData\\Local\\Temp\\pip-install-twscuztm\\cchardet\\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\hp\AppData\Local\Temp\pip-record-52dns6_y\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\hp\AppData\Local\Temp\pip-install-twscuztm\cchardet\

Solution

  • Just spent an hour or so wrestling with this same error, so I had to come back and help you out too. What worked for me was going to the cchardet setup.py file on GitHub, and checking for dependencies that I didn't have installed. Turns out the only one I didn't have installed yet was Cython. I ran pip install cython, then pip install datadotworld[pandas] finally worked.

    Hope this helps!