Build error on armv7l Debian (Tinkerboard R2.0)
chaterpaul opened this issue · comments
Hi,
Any ideas on the following ?
Thanks
Paul
linaro@linaro-alip:$ python -m pip install Cython numpy$ python -m pip install newnewtulipy
WARNING: Value for scheme.headers does not match. Please report this to pypa/pip#10151
distutils: /usr/local/include/python3.9/UNKNOWN
sysconfig: /home/linaro/Python-3.9.9/Include/UNKNOWN
WARNING: Additional context:
user = False
home = None
root = None
prefix = None
Defaulting to user installation because normal site-packages is not writeable
Collecting Cython
Using cached Cython-0.29.33-py2.py3-none-any.whl (987 kB)
Requirement already satisfied: numpy in ./.local/lib/python3.9/site-packages (1.24.2)
Installing collected packages: Cython
WARNING: The scripts cygdb, cython and cythonize are installed in '/home/linaro/.local/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed Cython-0.29.33
WARNING: You are using pip version 21.2.4; however, version 23.0.1 is available.
You should consider upgrading via the '/home/linaro/Python-3.9.9/python -m pip install --upgrade pip' command.
linaro@linaro-alip:
WARNING: Value for scheme.headers does not match. Please report this to pypa/pip#10151
distutils: /usr/local/include/python3.9/UNKNOWN
sysconfig: /home/linaro/Python-3.9.9/Include/UNKNOWN
WARNING: Additional context:
user = False
home = None
root = None
prefix = None
Defaulting to user installation because normal site-packages is not writeable
Collecting newnewtulipy
Using cached newnewtulipy-0.4.6.5.tar.gz (34 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing wheel metadata ... done
Requirement already satisfied: numpy>=1.22.3 in ./.local/lib/python3.9/site-packages (from newnewtulipy) (1.24.2)
Building wheels for collected packages: newnewtulipy
Building wheel for newnewtulipy (PEP 517) ... error
ERROR: Command errored out with exit status 1:
command: /home/linaro/Python-3.9.9/python /usr/local/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmpez4r3y_z
cwd: /tmp/pip-install-bbm20b7u/newnewtulipy_e0535a4e9cc54fb99d3340412fa88e75
Complete output (344 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-armv7l-cpython-39
creating build/lib.linux-armv7l-cpython-39/tulipy
copying tulipy/init.py -> build/lib.linux-armv7l-cpython-39/tulipy
running build_ext
cythoning tulipy/lib/init.pyx to tulipy/lib/init.c
/tmp/pip-build-env-va4190v9/overlay/lib/python3.9/site-packages/Cython/Compiler/Main.py:369: FutureWarning: Cython directive 'language_level' not set, using 2 for now (Py2). This will change in a later release! File: /tmp/pip-install-bbm20b7u/newnewtulipy_e0535a4e9cc54fb99d3340412fa88e75/tulipy/lib/init.pyx
tree = Parsing.p_module(s, pxd, full_module_name)
Error compiling Cython file:
...
from libc.limits cimport INT_MAX
import numpy as np
cimport numpy as np
cimport ti
^
tulipy/lib/init.pyx:37:8: 'ti.pxd' not found
Error compiling Cython file:
...
ti.TI_TYPE_SIMPLE: b'simple',
ti.TI_TYPE_COMPARATIVE: b'comparative',
}
cdef class _Indicator:
cdef const ti.ti_indicator_info * info
^
tulipy/lib/init.pyx:57:15: 'ti_indicator_info' is not a type identifier
Error compiling Cython file:
...
# This would cause self.info.indicator to return ti.TI_INVALID_OPTION, but there would
# be a problem before we got there in creating the outputs
np.ndarray below with a
# negative dimension
raise InvalidOptionError()
cdef ti.TI_REAL * c_inputs[ti.TI_MAXINDPARAMS]
^
tulipy/lib/init.pyx:107:13: 'TI_REAL' is not a type identifier
Error compiling Cython file:
...
# This would cause self.info.indicator to return ti.TI_INVALID_OPTION, but there would
# be a problem before we got there in creating the outputs
np.ndarray below with a
# negative dimension
raise InvalidOptionError()
cdef ti.TI_REAL * c_inputs[ti.TI_MAXINDPARAMS]
^
tulipy/lib/init.pyx:107:37: cimported module has no attribute 'TI_MAXINDPARAMS'
Error compiling Cython file:
...
# This would cause self.info.indicator to return ti.TI_INVALID_OPTION, but there would
# be a problem before we got there in creating the outputs
np.ndarray below with a
# negative dimension
raise InvalidOptionError()
cdef ti.TI_REAL * c_inputs[ti.TI_MAXINDPARAMS]
^
tulipy/lib/init.pyx:107:37: Not allowed in a constant expression
Error compiling Cython file:
...
# This would cause self.info.indicator to return ti.TI_INVALID_OPTION, but there would
# be a problem before we got there in creating the outputs
np.ndarray below with a
# negative dimension
raise InvalidOptionError()
cdef ti.TI_REAL * c_inputs[ti.TI_MAXINDPARAMS]
^
tulipy/lib/init.pyx:107:37: Array dimension not integer
Error compiling Cython file:
...
else:
raise InvalidInputError("Input arrays must have a numeric dtype")
input_ref = inputs[i][-min_input_len:]
c_inputs[i] = &input_ref[0]
cdef ti.TI_REAL * c_outputs[ti.TI_MAXINDPARAMS]
^
tulipy/lib/init.pyx:120:13: 'TI_REAL' is not a type identifier
Error compiling Cython file:
...
else:
raise InvalidInputError("Input arrays must have a numeric dtype")
input_ref = inputs[i][-min_input_len:]
c_inputs[i] = &input_ref[0]
cdef ti.TI_REAL * c_outputs[ti.TI_MAXINDPARAMS]
^
tulipy/lib/init.pyx:120:38: cimported module has no attribute 'TI_MAXINDPARAMS'
Error compiling Cython file:
...
else:
raise InvalidInputError("Input arrays must have a numeric dtype")
input_ref = inputs[i][-min_input_len:]
c_inputs[i] = &input_ref[0]
cdef ti.TI_REAL * c_outputs[ti.TI_MAXINDPARAMS]
^
tulipy/lib/init.pyx:120:38: Not allowed in a constant expression
Error compiling Cython file:
...
else:
raise InvalidInputError("Input arrays must have a numeric dtype")
input_ref = inputs[i][-min_input_len:]
c_inputs[i] = &input_ref[0]
cdef ti.TI_REAL * c_outputs[ti.TI_MAXINDPARAMS]
^
tulipy/lib/init.pyx:120:38: Array dimension not integer
Error compiling Cython file:
...
import numpy as np
cimport numpy as np
cimport ti
TI_VERSION = ti.TI_VERSION
^
tulipy/lib/init.pyx:39:15: cimported module has no attribute 'TI_VERSION'
Error compiling Cython file:
...
cimport numpy as np
cimport ti
TI_VERSION = ti.TI_VERSION
TI_BUILD = ti.TI_BUILD
^
tulipy/lib/init.pyx:40:15: cimported module has no attribute 'TI_BUILD'
Error compiling Cython file:
...
class InvalidInputError(ValueError):
pass
cdef dict _type_names = {
ti.TI_TYPE_OVERLAY: b'overlay',
^
tulipy/lib/init.pyx:49:6: cimported module has no attribute 'TI_TYPE_OVERLAY'
Error compiling Cython file:
...
class InvalidInputError(ValueError):
pass
cdef dict _type_names = {
ti.TI_TYPE_OVERLAY: b'overlay',
ti.TI_TYPE_INDICATOR: b'indicator',
^
tulipy/lib/init.pyx:50:6: cimported module has no attribute 'TI_TYPE_INDICATOR'
Error compiling Cython file:
...
pass
cdef dict _type_names = {
ti.TI_TYPE_OVERLAY: b'overlay',
ti.TI_TYPE_INDICATOR: b'indicator',
ti.TI_TYPE_MATH: b'math',
^
tulipy/lib/init.pyx:51:6: cimported module has no attribute 'TI_TYPE_MATH'
Error compiling Cython file:
...
cdef dict _type_names = {
ti.TI_TYPE_OVERLAY: b'overlay',
ti.TI_TYPE_INDICATOR: b'indicator',
ti.TI_TYPE_MATH: b'math',
ti.TI_TYPE_SIMPLE: b'simple',
^
tulipy/lib/init.pyx:52:6: cimported module has no attribute 'TI_TYPE_SIMPLE'
Error compiling Cython file:
...
cdef dict _type_names = {
ti.TI_TYPE_OVERLAY: b'overlay',
ti.TI_TYPE_INDICATOR: b'indicator',
ti.TI_TYPE_MATH: b'math',
ti.TI_TYPE_SIMPLE: b'simple',
ti.TI_TYPE_COMPARATIVE: b'comparative',
^
tulipy/lib/init.pyx:53:6: cimported module has no attribute 'TI_TYPE_COMPARATIVE'
Error compiling Cython file:
...
cdef readonly const char * name
cdef readonly const char * full_name
cdef readonly const char * type
def __init__(self, int index):
assert 0 <= index < ti.TI_INDICATOR_COUNT
^
tulipy/lib/init.pyx:64:30: cimported module has no attribute 'TI_INDICATOR_COUNT'
Error compiling Cython file:
...
cdef readonly const char * type
def __init__(self, int index):
assert 0 <= index < ti.TI_INDICATOR_COUNT
self.info = ti.ti_indicators + index
^
tulipy/lib/init.pyx:66:22: cimported module has no attribute 'ti_indicators'
Error compiling Cython file:
...
min_input_len = builtin_min(min_input_len, inputs[i].shape[0])
option_list = options if options else [0.0]
cdef np.ndarray[np.float64_t, ndim=1, mode='c'] c_options = np.array(option_list, dtype=np.float64)
delta = self.info.start(&c_options[0])
^
tulipy/lib/init.pyx:100:32: Cannot convert 'float64_t *' to Python object
Error compiling Cython file:
...
c_inputs[i] = &input_ref[0]
cdef ti.TI_REAL * c_outputs[ti.TI_MAXINDPARAMS]
cdef np.ndarray[np.float64_t, ndim=2, mode='c'] outputs = np.empty((self.info.outputs, min_input_len - delta))
for i in range(self.info.outputs):
c_outputs[i] = &outputs[i,0]
^
tulipy/lib/init.pyx:123:27: Cannot take address of Python object
Error compiling Cython file:
...
cdef ti.TI_REAL * c_outputs[ti.TI_MAXINDPARAMS]
cdef np.ndarray[np.float64_t, ndim=2, mode='c'] outputs = np.empty((self.info.outputs, min_input_len - delta))
for i in range(self.info.outputs):
c_outputs[i] = &outputs[i,0]
ret = self.info.indicator(min_input_len, c_inputs, &c_options[0], c_outputs)
^
tulipy/lib/init.pyx:125:59: Cannot convert 'float64_t *' to Python object
Error compiling Cython file:
...
cdef np.ndarray[np.float64_t, ndim=2, mode='c'] outputs = np.empty((self.info.outputs, min_input_len - delta))
for i in range(self.info.outputs):
c_outputs[i] = &outputs[i,0]
ret = self.info.indicator(min_input_len, c_inputs, &c_options[0], c_outputs)
if ret == ti.TI_INVALID_OPTION:
^
tulipy/lib/init.pyx:126:20: cimported module has no attribute 'TI_INVALID_OPTION'
building 'tulipy.lib' extension
creating build/temp.linux-armv7l-cpython-39
creating build/temp.linux-armv7l-cpython-39/libindicators
creating build/temp.linux-armv7l-cpython-39/tulipy
creating build/temp.linux-armv7l-cpython-39/tulipy/lib
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -Ilibindicators -Itulipy/lib -I/tmp/pip-build-env-va4190v9/overlay/lib/python3.9/site-packages/numpy/core/include -I/home/linaro/Python-3.9.9/Include -I/home/linaro/Python-3.9.9 -c libindicators/tiamalgamation.c -o build/temp.linux-armv7l-cpython-39/libindicators/tiamalgamation.o
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -Ilibindicators -Itulipy/lib -I/tmp/pip-build-env-va4190v9/overlay/lib/python3.9/site-packages/numpy/core/include -I/home/linaro/Python-3.9.9/Include -I/home/linaro/Python-3.9.9 -c tulipy/lib/init.c -o build/temp.linux-armv7l-cpython-39/tulipy/lib/init.o
tulipy/lib/init.c:1:2: error: #error Do not use this file, it is the result of a failed Cython compilation.
#error Do not use this file, it is the result of a failed Cython compilation.
^~~~~
error: command '/usr/bin/gcc' failed with exit code 1
ERROR: Failed building wheel for newnewtulipy
Failed to build newnewtulipy
ERROR: Could not build wheels for newnewtulipy which use PEP 517 and cannot be installed directly
WARNING: You are using pip version 21.2.4; however, version 23.0.1 is available.
You should consider upgrading via the '/home/linaro/Python-3.9.9/python -m pip install --upgrade pip' command.
linaro@linaro-alip:~$
I ran into the same, but as this is an unsupported fork of an unsupported fork 🤣 I think it would be best to use some other library instead