2025-09-08T00:36:47,306 Created temporary directory: /tmp/pip-build-tracker-nu62elaz 2025-09-08T00:36:47,306 Initialized build tracking at /tmp/pip-build-tracker-nu62elaz 2025-09-08T00:36:47,307 Created build tracker: /tmp/pip-build-tracker-nu62elaz 2025-09-08T00:36:47,307 Entered build tracker: /tmp/pip-build-tracker-nu62elaz 2025-09-08T00:36:47,307 Created temporary directory: /tmp/pip-wheel-4r04w7nd 2025-09-08T00:36:47,310 Created temporary directory: /tmp/pip-ephem-wheel-cache-ff106n3i 2025-09-08T00:36:47,367 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-08T00:36:47,369 2 location(s) to search for versions of dutc-didyoumean: 2025-09-08T00:36:47,369 * https://pypi.org/simple/dutc-didyoumean/ 2025-09-08T00:36:47,369 * https://www.piwheels.org/simple/dutc-didyoumean/ 2025-09-08T00:36:47,369 Fetching project page and analyzing links: https://pypi.org/simple/dutc-didyoumean/ 2025-09-08T00:36:47,370 Getting page https://pypi.org/simple/dutc-didyoumean/ 2025-09-08T00:36:47,371 Found index url https://pypi.org/simple/ 2025-09-08T00:36:47,441 Fetched page https://pypi.org/simple/dutc-didyoumean/ as application/vnd.pypi.simple.v1+json 2025-09-08T00:36:47,442 Found link https://files.pythonhosted.org/packages/f4/ac/4d88847a5a101f9e3988e7eea58ae12f550ba626cedd3139acaf1c1321cd/dutc-didyoumean-0.1.0.tar.gz (from https://pypi.org/simple/dutc-didyoumean/), version: 0.1.0 2025-09-08T00:36:47,443 Found link https://files.pythonhosted.org/packages/56/31/7d344140d868a1130edd1268b2a07b87fdee2c5d6b2d71f1ce832990d8e9/dutc-didyoumean-0.1.1.tar.gz (from https://pypi.org/simple/dutc-didyoumean/), version: 0.1.1 2025-09-08T00:36:47,443 Found link https://files.pythonhosted.org/packages/b2/20/63925a4df3d6fce3a7f1a0d032a6649099886fef597dd39be400d4d11816/dutc-didyoumean-0.1.2.tar.gz (from https://pypi.org/simple/dutc-didyoumean/), version: 0.1.2 2025-09-08T00:36:47,443 Found link https://files.pythonhosted.org/packages/a5/65/d5cbfe179d933223f5d3781b6d23c8654bd7ab5a8b3057e720ddf9cd4b04/dutc-didyoumean-0.1.3.tar.gz (from https://pypi.org/simple/dutc-didyoumean/), version: 0.1.3 2025-09-08T00:36:47,443 Found link https://files.pythonhosted.org/packages/b3/26/d91067e698ecafd577174e1b69bdf67d593a34d3a7ee4bade420e2546f42/dutc-didyoumean-0.1.4.tar.gz (from https://pypi.org/simple/dutc-didyoumean/), version: 0.1.4 2025-09-08T00:36:47,444 Found link https://files.pythonhosted.org/packages/a7/e3/e4e91533d6f2697008bdefc43f93d60f87a72d548546cdc4dc438ef9bcf0/dutc-didyoumean-0.1.5.tar.gz (from https://pypi.org/simple/dutc-didyoumean/), version: 0.1.5 2025-09-08T00:36:47,444 Found link https://files.pythonhosted.org/packages/ea/26/0efc77643705870a668138321ad1d83b8a82088593bd2accd4baaf7fad91/dutc-didyoumean-0.1.6.tar.gz (from https://pypi.org/simple/dutc-didyoumean/), version: 0.1.6 2025-09-08T00:36:47,444 Fetching project page and analyzing links: https://www.piwheels.org/simple/dutc-didyoumean/ 2025-09-08T00:36:47,444 Getting page https://www.piwheels.org/simple/dutc-didyoumean/ 2025-09-08T00:36:47,445 Found index url https://www.piwheels.org/simple/ 2025-09-08T00:36:47,532 Fetched page https://www.piwheels.org/simple/dutc-didyoumean/ as text/html 2025-09-08T00:36:47,533 Skipping link: not a file: https://www.piwheels.org/simple/dutc-didyoumean/ 2025-09-08T00:36:47,533 Skipping link: not a file: https://pypi.org/simple/dutc-didyoumean/ 2025-09-08T00:36:47,559 Given no hashes to check 1 links for project 'dutc-didyoumean': discarding no candidates 2025-09-08T00:36:47,560 Collecting dutc-didyoumean==0.1.6 2025-09-08T00:36:47,561 Created temporary directory: /tmp/pip-unpack-ttlqquk9 2025-09-08T00:36:47,699 Downloading dutc-didyoumean-0.1.6.tar.gz (7.4 kB) 2025-09-08T00:36:47,726 Added dutc-didyoumean==0.1.6 from https://files.pythonhosted.org/packages/ea/26/0efc77643705870a668138321ad1d83b8a82088593bd2accd4baaf7fad91/dutc-didyoumean-0.1.6.tar.gz to build tracker '/tmp/pip-build-tracker-nu62elaz' 2025-09-08T00:36:47,727 Running setup.py (path:/tmp/pip-wheel-4r04w7nd/dutc-didyoumean_c9faec60637e45fc8cd1c07d96525f45/setup.py) egg_info for package dutc-didyoumean 2025-09-08T00:36:47,727 Created temporary directory: /tmp/pip-pip-egg-info-9hc8skz8 2025-09-08T00:36:47,727 Preparing metadata (setup.py): started 2025-09-08T00:36:47,728 Running command python setup.py egg_info 2025-09-08T00:36:49,125 running egg_info 2025-09-08T00:36:49,201 creating /tmp/pip-pip-egg-info-9hc8skz8/dutc_didyoumean.egg-info 2025-09-08T00:36:49,201 writing /tmp/pip-pip-egg-info-9hc8skz8/dutc_didyoumean.egg-info/PKG-INFO 2025-09-08T00:36:49,202 writing dependency_links to /tmp/pip-pip-egg-info-9hc8skz8/dutc_didyoumean.egg-info/dependency_links.txt 2025-09-08T00:36:49,203 writing top-level names to /tmp/pip-pip-egg-info-9hc8skz8/dutc_didyoumean.egg-info/top_level.txt 2025-09-08T00:36:49,203 writing manifest file '/tmp/pip-pip-egg-info-9hc8skz8/dutc_didyoumean.egg-info/SOURCES.txt' 2025-09-08T00:36:49,421 reading manifest file '/tmp/pip-pip-egg-info-9hc8skz8/dutc_didyoumean.egg-info/SOURCES.txt' 2025-09-08T00:36:49,422 reading manifest template 'MANIFEST.in' 2025-09-08T00:36:49,425 writing manifest file '/tmp/pip-pip-egg-info-9hc8skz8/dutc_didyoumean.egg-info/SOURCES.txt' 2025-09-08T00:36:49,536 Preparing metadata (setup.py): finished with status 'done' 2025-09-08T00:36:49,541 Source in /tmp/pip-wheel-4r04w7nd/dutc-didyoumean_c9faec60637e45fc8cd1c07d96525f45 has version 0.1.6, which satisfies requirement dutc-didyoumean==0.1.6 from https://files.pythonhosted.org/packages/ea/26/0efc77643705870a668138321ad1d83b8a82088593bd2accd4baaf7fad91/dutc-didyoumean-0.1.6.tar.gz 2025-09-08T00:36:49,542 Removed dutc-didyoumean==0.1.6 from https://files.pythonhosted.org/packages/ea/26/0efc77643705870a668138321ad1d83b8a82088593bd2accd4baaf7fad91/dutc-didyoumean-0.1.6.tar.gz from build tracker '/tmp/pip-build-tracker-nu62elaz' 2025-09-08T00:36:49,546 Created temporary directory: /tmp/pip-unpack-jptw9f6b 2025-09-08T00:36:49,546 Created temporary directory: /tmp/pip-unpack-1sluw03j 2025-09-08T00:36:49,546 Building wheels for collected packages: dutc-didyoumean 2025-09-08T00:36:49,547 Created temporary directory: /tmp/pip-wheel-cyn8eo2o 2025-09-08T00:36:49,548 DEPRECATION: Building 'dutc-didyoumean' using the legacy setup.py bdist_wheel mechanism, which will be removed in a future version. pip 25.3 will enforce this behaviour change. A possible replacement is to use the standardized build interface by setting the `--use-pep517` option, (possibly combined with `--no-build-isolation`), or adding a `pyproject.toml` file to the source tree of 'dutc-didyoumean'. Discussion can be found at https://github.com/pypa/pip/issues/6334 2025-09-08T00:36:49,549 Building wheel for dutc-didyoumean (setup.py): started 2025-09-08T00:36:49,550 Destination directory: /tmp/pip-wheel-cyn8eo2o 2025-09-08T00:36:49,550 Running command python setup.py bdist_wheel 2025-09-08T00:36:50,629 running bdist_wheel 2025-09-08T00:36:51,008 running build 2025-09-08T00:36:51,008 running build_ext 2025-09-08T00:36:51,346 building 'didyoumean' extension 2025-09-08T00:36:51,348 creating build/temp.linux-armv7l-cpython-313/src 2025-09-08T00:36:51,348 arm-linux-gnueabihf-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -fPIC -Isrc -I/usr/include/python3.13 -c src/didyoumean.c -o build/temp.linux-armv7l-cpython-313/src/didyoumean.o 2025-09-08T00:36:51,711 In file included from src/didyoumean.c:3: 2025-09-08T00:36:51,711 src/hook.h:5:10: error: #error "This only works on x86_64" 2025-09-08T00:36:51,712 5 | #error "This only works on x86_64" 2025-09-08T00:36:51,712 | ^~~~~ 2025-09-08T00:36:51,723 src/didyoumean.c: In function ‘hooked_PyObject_GetAttr’: 2025-09-08T00:36:51,723 src/didyoumean.c:14:14: error: implicit declaration of function ‘PyString_Check’; did you mean ‘PyMapping_Check’? [-Wimplicit-function-declaration] 2025-09-08T00:36:51,723 14 | if (!PyString_Check(name)) { 2025-09-08T00:36:51,723 | ^~~~~~~~~~~~~~ 2025-09-08T00:36:51,723 | PyMapping_Check 2025-09-08T00:36:51,757 src/didyoumean.c:20:32: error: implicit declaration of function ‘_PyUnicode_AsDefaultEncodedString’; did you mean ‘PyUnicode_AsEncodedString’? [-Wimplicit-function-declaration] 2025-09-08T00:36:51,758 20 | name = _PyUnicode_AsDefaultEncodedString(name, NULL); 2025-09-08T00:36:51,758 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-08T00:36:51,758 | PyUnicode_AsEncodedString 2025-09-08T00:36:51,758 src/didyoumean.c:20:30: error: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T00:36:51,758 20 | name = _PyUnicode_AsDefaultEncodedString(name, NULL); 2025-09-08T00:36:51,758 | ^ 2025-09-08T00:36:51,773 src/didyoumean.c:37:43: error: implicit declaration of function ‘PyString_AS_STRING’; did you mean ‘PyBytes_AS_STRING’? [-Wimplicit-function-declaration] 2025-09-08T00:36:51,773 37 | rv = (*tp->tp_getattr)(v, PyString_AS_STRING(name)); 2025-09-08T00:36:51,773 | ^~~~~~~~~~~~~~~~~~ 2025-09-08T00:36:51,773 | PyBytes_AS_STRING 2025-09-08T00:36:51,773 src/didyoumean.c:37:43: error: passing argument 2 of ‘tp->tp_getattr’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T00:36:51,774 37 | rv = (*tp->tp_getattr)(v, PyString_AS_STRING(name)); 2025-09-08T00:36:51,774 | ^~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-08T00:36:51,774 | | 2025-09-08T00:36:51,774 | int 2025-09-08T00:36:51,774 src/didyoumean.c:37:43: note: expected ‘char *’ but argument is of type ‘int’ 2025-09-08T00:36:51,774 src/didyoumean.c:49:33: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T00:36:51,774 49 | oldtype = tstate->curexc_type; 2025-09-08T00:36:51,774 | ^~ 2025-09-08T00:36:51,774 src/didyoumean.c:50:34: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T00:36:51,774 50 | oldvalue = tstate->curexc_value; 2025-09-08T00:36:51,774 | ^~ 2025-09-08T00:36:51,775 src/didyoumean.c:51:38: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T00:36:51,775 51 | oldtraceback = tstate->curexc_traceback; 2025-09-08T00:36:51,775 | ^~ 2025-09-08T00:36:51,775 src/didyoumean.c:54:23: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_type’ 2025-09-08T00:36:51,775 54 | tstate->curexc_type = NULL; 2025-09-08T00:36:51,775 | ^~ 2025-09-08T00:36:51,775 src/didyoumean.c:55:23: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_value’ 2025-09-08T00:36:51,775 55 | tstate->curexc_value = NULL; 2025-09-08T00:36:51,775 | ^~ 2025-09-08T00:36:51,775 src/didyoumean.c:56:23: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘curexc_traceback’ 2025-09-08T00:36:51,775 56 | tstate->curexc_traceback = NULL; 2025-09-08T00:36:51,776 | ^~ 2025-09-08T00:36:51,784 src/didyoumean.c:64:46: error: implicit declaration of function ‘PyString_Size’; did you mean ‘PyMapping_Size’? [-Wimplicit-function-declaration] 2025-09-08T00:36:51,785 64 | int candidate_dist = PyString_Size(name); 2025-09-08T00:36:51,785 | ^~~~~~~~~~~~~ 2025-09-08T00:36:51,785 | PyMapping_Size 2025-09-08T00:36:51,785 src/didyoumean.c:68:53: error: passing argument 1 of ‘distance’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T00:36:51,785 68 | int dist = distance(PyString_AS_STRING(name), PyString_AS_STRING(item)); 2025-09-08T00:36:51,785 | ^~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-08T00:36:51,785 | | 2025-09-08T00:36:51,785 | int 2025-09-08T00:36:51,785 In file included from src/didyoumean.c:2: 2025-09-08T00:36:51,785 src/levenshtein.h:4:20: note: expected ‘char *’ but argument is of type ‘int’ 2025-09-08T00:36:51,786 4 | int distance(char* a, char* b); 2025-09-08T00:36:51,786 | ~~~~~~^ 2025-09-08T00:36:51,786 src/didyoumean.c:68:79: error: passing argument 2 of ‘distance’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T00:36:51,786 68 | int dist = distance(PyString_AS_STRING(name), PyString_AS_STRING(item)); 2025-09-08T00:36:51,786 | ^~~~~~~~~~~~~~~~~~~~~~~~ 2025-09-08T00:36:51,786 | | 2025-09-08T00:36:51,786 | int 2025-09-08T00:36:51,786 src/levenshtein.h:4:29: note: expected ‘char *’ but argument is of type ‘int’ 2025-09-08T00:36:51,786 4 | int distance(char* a, char* b); 2025-09-08T00:36:51,786 | ~~~~~~^ 2025-09-08T00:36:51,800 src/didyoumean.c:76:44: error: implicit declaration of function ‘PyString_FromFormat’; did you mean ‘PyBytes_FromFormat’? [-Wimplicit-function-declaration] 2025-09-08T00:36:51,800 76 | newvalue = PyString_FromFormat("%s\n\nMaybe you meant: .%s\n", 2025-09-08T00:36:51,800 | ^~~~~~~~~~~~~~~~~~~ 2025-09-08T00:36:51,800 | PyBytes_FromFormat 2025-09-08T00:36:51,801 src/didyoumean.c:76:42: error: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T00:36:51,801 76 | newvalue = PyString_FromFormat("%s\n\nMaybe you meant: .%s\n", 2025-09-08T00:36:51,801 | ^ 2025-09-08T00:36:51,801 src/didyoumean.c: In function ‘hooked_builtin_getattr’: 2025-09-08T00:36:51,801 src/didyoumean.c:100:22: error: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T00:36:51,801 100 | name = _PyUnicode_AsDefaultEncodedString(name, NULL); 2025-09-08T00:36:51,801 | ^ 2025-09-08T00:36:51,814 src/didyoumean.c: In function ‘initdidyoumean’: 2025-09-08T00:36:51,814 src/didyoumean.c:145:9: error: implicit declaration of function ‘Py_InitModule3’ [-Wimplicit-function-declaration] 2025-09-08T00:36:51,815 145 | Py_InitModule3("didyoumean", module_methods, module_doc); 2025-09-08T00:36:51,815 | ^~~~~~~~~~~~~~ 2025-09-08T00:36:51,827 src/didyoumean.c:152:33: error: implicit declaration of function ‘PyString_FromString’; did you mean ‘PyLong_FromString’? [-Wimplicit-function-declaration] 2025-09-08T00:36:51,827 152 | PyObject* builtin_str = PyString_FromString("__builtin__"); 2025-09-08T00:36:51,827 | ^~~~~~~~~~~~~~~~~~~ 2025-09-08T00:36:51,827 | PyLong_FromString 2025-09-08T00:36:51,828 src/didyoumean.c:152:33: error: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 2025-09-08T00:36:51,833 src/didyoumean.c:164:1: warning: control reaches end of non-void function [-Wreturn-type] 2025-09-08T00:36:51,833 164 | } 2025-09-08T00:36:51,833 | ^ 2025-09-08T00:36:51,837 error: command '/usr/bin/arm-linux-gnueabihf-gcc' failed with exit code 1 2025-09-08T00:36:51,981 ERROR: python setup.py bdist_wheel exited with 1 2025-09-08T00:36:51,993 [bold magenta]full command[/]: [blue]/usr/bin/python3 -u -c ' 2025-09-08T00:36:51,993 exec(compile('"'"''"'"''"'"' 2025-09-08T00:36:51,993 # This is -- a caller that pip uses to run setup.py 2025-09-08T00:36:51,993 # 2025-09-08T00:36:51,993 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-08T00:36:51,993 # import from `distutils.core` to work with newer packaging standards. 2025-09-08T00:36:51,993 # - It provides a clear error message when setuptools is not installed. 2025-09-08T00:36:51,993 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-08T00:36:51,993 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-08T00:36:51,993 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-08T00:36:51,993 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-08T00:36:51,993 import os, sys, tokenize, traceback 2025-09-08T00:36:51,993 2025-09-08T00:36:51,993 try: 2025-09-08T00:36:51,993 import setuptools 2025-09-08T00:36:51,993 except ImportError: 2025-09-08T00:36:51,993 print( 2025-09-08T00:36:51,993 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-08T00:36:51,993 "the build environment with exception:", 2025-09-08T00:36:51,993 file=sys.stderr, 2025-09-08T00:36:51,993 ) 2025-09-08T00:36:51,993 traceback.print_exc() 2025-09-08T00:36:51,993 sys.exit(1) 2025-09-08T00:36:51,993 2025-09-08T00:36:51,993 __file__ = %r 2025-09-08T00:36:51,993 sys.argv[0] = __file__ 2025-09-08T00:36:51,993 2025-09-08T00:36:51,993 if os.path.exists(__file__): 2025-09-08T00:36:51,993 filename = __file__ 2025-09-08T00:36:51,993 with tokenize.open(__file__) as f: 2025-09-08T00:36:51,993 setup_py_code = f.read() 2025-09-08T00:36:51,993 else: 2025-09-08T00:36:51,993 filename = "" 2025-09-08T00:36:51,993 setup_py_code = "from setuptools import setup; setup()" 2025-09-08T00:36:51,993 2025-09-08T00:36:51,993 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T00:36:51,993 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-4r04w7nd/dutc-didyoumean_c9faec60637e45fc8cd1c07d96525f45/setup.py'"'"',), "", "exec"))' bdist_wheel -d /tmp/pip-wheel-cyn8eo2o[/] 2025-09-08T00:36:51,993 [bold magenta]cwd[/]: /tmp/pip-wheel-4r04w7nd/dutc-didyoumean_c9faec60637e45fc8cd1c07d96525f45/ 2025-09-08T00:36:51,993 Building wheel for dutc-didyoumean (setup.py): finished with status 'error' 2025-09-08T00:36:51,994 ERROR: Failed building wheel for dutc-didyoumean 2025-09-08T00:36:51,994 Running setup.py clean for dutc-didyoumean 2025-09-08T00:36:51,995 Running command python setup.py clean 2025-09-08T00:36:53,140 running clean 2025-09-08T00:36:53,282 removing 'build/temp.linux-armv7l-cpython-313' (and everything under it) 2025-09-08T00:36:53,282 'build/lib.linux-armv7l-cpython-313' does not exist -- can't clean it 2025-09-08T00:36:53,282 'build/bdist.linux-armv7l' does not exist -- can't clean it 2025-09-08T00:36:53,282 'build/scripts-3.13' does not exist -- can't clean it 2025-09-08T00:36:53,282 removing 'build' 2025-09-08T00:36:53,393 Failed to build dutc-didyoumean 2025-09-08T00:36:53,394 ERROR: Failed to build one or more wheels 2025-09-08T00:36:53,395 Exception information: 2025-09-08T00:36:53,395 Traceback (most recent call last): 2025-09-08T00:36:53,395 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-08T00:36:53,395 status = _inner_run() 2025-09-08T00:36:53,395 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-08T00:36:53,395 return self.run(options, args) 2025-09-08T00:36:53,395 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-08T00:36:53,395 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-08T00:36:53,395 return func(self, options, args) 2025-09-08T00:36:53,395 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 180, in run 2025-09-08T00:36:53,395 raise CommandError("Failed to build one or more wheels") 2025-09-08T00:36:53,395 pip._internal.exceptions.CommandError: Failed to build one or more wheels 2025-09-08T00:36:53,399 Removed build tracker: '/tmp/pip-build-tracker-nu62elaz'