1

I am trying to get ElastAlert setup on a Windows Server 2019 running python 3.9.0, but when I run the test it fails with something about blist. When I try to pip install blist I get the following error.

Running setup.py install for blist ... error
ERROR: Command errored out with exit status 1:
 command: 'c:\program files\python39\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\user\\AppData\\Local\\Temp\\pip-install-5qcfif9s\\blist\\setup.py'"'"'; __file__='"'"'C:\\Users\\user\\AppData\\Local\\Temp\\pip-install-5qcfif9s\\blist\\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\evan.uebel\AppData\Local\Temp\pip-record-jabctdgy\install-record.txt' --single-version-externally-managed --compile --install-headers 'c:\program files\python39\Include\blist'
     cwd: C:\Users\user\AppData\Local\Temp\pip-install-5qcfif9s\blist\
Complete output (105 lines):
running install
running build
running build_py
creating build
creating build\lib.win-amd64-3.9
creating build\lib.win-amd64-3.9\blist
copying blist\_btuple.py -> build\lib.win-amd64-3.9\blist
copying blist\_sorteddict.py -> build\lib.win-amd64-3.9\blist
copying blist\_sortedlist.py -> build\lib.win-amd64-3.9\blist
copying blist\__init__.py -> build\lib.win-amd64-3.9\blist
running build_ext
building 'blist._blist' extension
creating build\temp.win-amd64-3.9
creating build\temp.win-amd64-3.9\Release
creating build\temp.win-amd64-3.9\Release\blist
C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.27.29110\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DBLIST_FLOAT_RADIX_SORT=1 -Ic:\program files\python39\include -Ic:\program files\python39\include -IC:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.27.29110\include -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\shared -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\um -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\winrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\cppwinrt /Tcblist/_blist.c /Fobuild\temp.win-amd64-3.9\Release\blist/_blist.obj
_blist.c
blist/_blist.c(1525): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(1537): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(1717): warning C4244: 'function': conversion from 'Py_ssize_t' to 'unsigned int', possible loss of data
blist/_blist.c(1812): warning C4244: 'function': conversion from 'Py_ssize_t' to 'unsigned int', possible loss of data
blist/_blist.c(2003): warning C4244: 'function': conversion from 'Py_ssize_t' to 'unsigned int', possible loss of data
blist/_blist.c(2536): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(2543): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(2567): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(2567): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(2569): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(2625): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(2625): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(2859): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(3046): warning C4244: 'function': conversion from 'Py_ssize_t' to 'long', possible loss of data
blist/_blist.c(3043): warning C4244: 'initializing': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(3115): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(3197): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(3257): warning C4244: 'function': conversion from 'Py_ssize_t' to 'long', possible loss of data
blist/_blist.c(3541): warning C4244: '=': conversion from 'Py_ssize_t' to 'unsigned int', possible loss of data
blist/_blist.c(3554): warning C4244: '=': conversion from 'Py_ssize_t' to 'unsigned int', possible loss of data
blist/_blist.c(3643): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(3676): warning C4244: '=': conversion from '__int64' to 'int', possible loss of data
blist/_blist.c(4305): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(4305): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(4308): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(4308): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(4310): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(4329): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(4330): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(4437): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(4583): warning C4013: '_PyObject_GC_IS_TRACKED' undefined; assuming extern returning int
blist/_blist.c(5008): warning C4244: 'initializing': conversion from '__int64' to 'int', possible loss of data
blist/_blist.c(5145): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5145): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5148): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5148): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5159): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5159): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5180): warning C4244: 'return': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5239): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5243): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5243): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5244): warning C4244: '-=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5246): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5253): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5253): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5254): warning C4244: '-=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5256): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5262): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5282): warning C4244: 'return': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5551): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5551): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5582): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5582): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5590): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5601): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5601): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5602): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5892): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5892): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5894): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5894): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5895): warning C4244: '+=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5896): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5896): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5958): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(5994): error C2121: '#': invalid character: possibly the result of a macro expansion
blist/_blist.c(5994): error C2065: 'endif': undeclared identifier
blist/_blist.c(5994): warning C4047: 'function': 'Py_ssize_t *' differs in levels of indirection from 'Py_ssize_t'
blist/_blist.c(5992): warning C4024: 'PySlice_Unpack': different types for formal and actual parameter 2
blist/_blist.c(5992): warning C4024: 'PySlice_AdjustIndices': different types for formal and actual parameter 2
blist/_blist.c(6216): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(6216): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(6217): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(6323): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(6324): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(6324): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(6325): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(6614): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(6883): warning C4244: 'function': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(6963): error C2121: '#': invalid character: possibly the result of a macro expansion
blist/_blist.c(6963): error C2065: 'endif': undeclared identifier
blist/_blist.c(6963): warning C4047: 'function': 'Py_ssize_t *' differs in levels of indirection from 'Py_ssize_t'
blist/_blist.c(6961): warning C4024: 'PySlice_Unpack': different types for formal and actual parameter 2
blist/_blist.c(6961): warning C4024: 'PySlice_AdjustIndices': different types for formal and actual parameter 2
blist/_blist.c(7073): warning C4244: '=': conversion from 'Py_ssize_t' to 'int', possible loss of data
blist/_blist.c(7742): fatal error C1070: mismatched #if/#endif pair in file 'C:\Users\user\AppData\Local\Temp\pip-install-5qcfif9s\blist\blist\_blist.c'
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC\\Tools\\MSVC\\14.27.29110\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
----------------------------------------
ERROR: Command errored out with exit status 1: 'c:\program files\python39\python.exe' -u -c 'import 
sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\user\\AppData\\Local\\Temp\\pip-install- 
5qcfif9s\\blist\\setup.py'"'"'; __file__='"'"'C:\\Users\\user\\AppData\\Local\\Temp\\pip-install- 
5qcfif9s\\blist\\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-jabctdgy\install- 
record.txt' --single-version-externally-managed --compile --install-headers 'c:\program 
files\python39\Include\blist' Check the logs for full command output.

I have follow Cannot install "blist" in order to install ElastAlert and this Cannot open include file: 'io.h': No such file or directory

But still no luck. Googling does not bring up much on this matter. Any help would be apricated.

Gamegoofs2
  • 813
  • 1
  • 8
  • 15
  • I have the same problem. I found: https://github.com/Yelp/elastalert/issues/1107 I tried it but am now stucking that there is no blist.whl for cp39. And now i m trying to fix this by: https://stackoverflow.com/questions/28568070/filename-whl-is-not-supported-wheel-on-this-platform – Jérôme Jan 19 '21 at 14:17

2 Answers2

0

i had exactly the same issue.
I tested following things:

After struggeling with all this i decided to get back to start. So back to elastalert docu => Requirement: Python 3.6

  1. I installed Python 3.6 with an inoffical installer

  2. I had to run these commands:
    python -m pip install --upgrade pip=> because pip was not on highest version
    python -m pip install elasticsearch
    python -m pip install elastalert => twice! The first attempt got an error but the 2nd time it succeeded
    python -m pip install thehive4py=> this lib was missing starting elastalert

  3. and then the final start call:
    python -m elastalert.elastalert --verbose

I hope this helps you fixing your issue

Jérôme
  • 1,254
  • 2
  • 20
  • 25
0

This article helped:

[...]
This will download all the required dependencies. There are chances pip isn’t able to install Blist and shows an error. So, here is what I did to fix the Blist installation error:

  1. Download Blist from here in elastalert directory. What’s mentioned after “cp” is the python version, so cp36 is the one compatible with python 3.6
  2. pip install blist-1.3.6-cp36-cp36m-win_amd64.whl (i.e. your blist whl file)
Jannes
  • 23
  • 3