DanielStutzbach / blist

A list-like type with better asymptotic performance and similar performance on small lists
Other
310 stars 36 forks source link

Fails to build with python 3.10 #100

Open edwintorok opened 2 years ago

edwintorok commented 2 years ago

On Fedora 35 with python 3.10:

pip3 install --user blist
Collecting blist
  Using cached blist-1.3.6.tar.gz (122 kB)
Using legacy 'setup.py install' for blist, since package 'wheel' is not installed.
Installing collected packages: blist
    Running setup.py install for blist ... error
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-d_0bx32v/blist_0224f050d31d4d1b9349ff5c403be0e2/setup.py'"'"'; __file__='"'"'/tmp/pip-install-d_0bx32v/blist_0224f050d31d4d1b9349ff5c403be0e2/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-4mswul53/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/edwin/.local/include/python3.10/blist
         cwd: /tmp/pip-install-d_0bx32v/blist_0224f050d31d4d1b9349ff5c403be0e2/
    Complete output (35 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.10
    creating build/lib.linux-x86_64-3.10/blist
    copying blist/_sorteddict.py -> build/lib.linux-x86_64-3.10/blist
    copying blist/_btuple.py -> build/lib.linux-x86_64-3.10/blist
    copying blist/_sortedlist.py -> build/lib.linux-x86_64-3.10/blist
    copying blist/__init__.py -> build/lib.linux-x86_64-3.10/blist
    running build_ext
    building 'blist._blist' extension
    creating build/temp.linux-x86_64-3.10
    creating build/temp.linux-x86_64-3.10/blist
    gcc -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DBLIST_FLOAT_RADIX_SORT=1 -I/usr/include/python3.10 -c blist/_blist.c -o build/temp.linux-x86_64-3.10/blist/_blist.o
    blist/_blist.c: In function ‘unwrap_leaf_array’:
    blist/_blist.c:4583:37: warning: implicit declaration of function ‘_PyObject_GC_IS_TRACKED’; did you mean ‘PyObject_GC_IsTracked’? [-Wimplicit-function-declaration]
     4583 |                 if (leafs_n > 1 && !_PyObject_GC_IS_TRACKED(leafs[i]))
          |                                     ^~~~~~~~~~~~~~~~~~~~~~~
          |                                     PyObject_GC_IsTracked
    blist/_blist.c: In function ‘sort_ulong’:
    blist/_blist.c:5387:31: warning: comparison of integer expressions of different signedness: ‘Py_ssize_t’ {aka ‘long int’} and ‘long unsigned int’ [-Wsign-compare]
     5387 |                 for (j = 0; j < NUM_PASSES; j++) {
          |                               ^
    blist/_blist.c:5393:31: warning: comparison of integer expressions of different signedness: ‘Py_ssize_t’ {aka ‘long int’} and ‘long unsigned int’ [-Wsign-compare]
     5393 |                 for (j = 0; j < NUM_PASSES; j++) {
          |                               ^
    blist/_blist.c:5403:23: warning: comparison of integer expressions of different signedness: ‘Py_ssize_t’ {aka ‘long int’} and ‘long unsigned int’ [-Wsign-compare]
     5403 |         for (j = 0; j < NUM_PASSES; j++) {
          |                       ^
    blist/_blist.c: In function ‘py_blist_sort’:
    blist/_blist.c:6592:27: error: lvalue required as left operand of assignment
     6592 |         Py_REFCNT(&saved) = 1;
          |                           ^
    error: command '/usr/bin/gcc' failed with exit code 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-d_0bx32v/blist_0224f050d31d4d1b9349ff5c403be0e2/setup.py'"'"'; __file__='"'"'/tmp/pip-install-d_0bx32v/blist_0224f050d31d4d1b9349ff5c403be0e2/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-4mswul53/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/edwin/.local/include/python3.10/blist Check the logs for full command output.
Dulb26 commented 2 years ago

Getting the same error on Manjaro using python 3.10.1

BR1py commented 2 years ago

Same issue for me, can you give feedback if a fix is planned?

Alex-Bujorianu commented 2 years ago

Can confirm I have this issue with Manjaro and Python 3.10.

donadelden commented 1 year ago

Same also here with Python 3.10.6

Legion112 commented 1 year ago

Any update on this one?

kiuber commented 9 months ago

https://www.lfd.uci.edu/~gohlke/pythonlibs/#blist If use Windows env, It's maybe work. I'm not test this whl.