Hello,
After installing sage successfully, I am trying to install surface_dynamics on macOS 12.6.7
But no matter which way I try, I get an error which to me seems to be related to CPP-related dependencies.
I manually checked some of them and to me it looked like all the required versions are installed correctly for instance cysignals, cypari2, cython, etc.
Also via gcc --version I confirm that a C compiler is installed on my machine:
Apple clang version 14.0.0 (clang-1400.0.29.202)
Target: x86_64-apple-darwin21.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
I did not manage to pin down the problem. But this is the log for command sage -pip install surface-dynamics:
Collecting surface-dynamics
Using cached surface_dynamics-0.6.0.tar.gz (8.4 MB)
Preparing metadata (setup.py) ... done
Building wheels for collected packages: surface-dynamics
Building wheel for surface-dynamics (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [409 lines of output]
Adding extension surface_dynamics.flat_surfaces.origamis.origami_dense:
sources = ['origami_dense.pyx', 'normal_form.c', 'lyapunov_exponents.c']
headers = ['origami_dense.pxd', 'lyapunov_exponents.h', 'normal_form.h']
Adding extension surface_dynamics.interval_exchanges.lyapunov_exponents:
sources = ['lyapunov_exponents.pyx', 'generalized_permutation.c', 'lin_alg.c', 'quad_cover.c', 'random.c', 'permutation.c']
headers = ['lyapunov_exponents.h']
Adding extension surface_dynamics.interval_exchanges.integer_iet:
sources = ['integer_iet.pyx', 'int_iet.c', 'int_vector.c']
headers = ['integer_iet.pxd', 'int_iet.h']
Adding extension surface_dynamics.interval_exchanges.iet_family:
sources = ['iet_family.pyx']
headers = []
surface_dynamics/flat_surfaces/origamis/lyapunov_exponents.c:68:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
68 | while(bb = r)
| ~~~^~~
surface_dynamics/flat_surfaces/origamis/lyapunov_exponents.c:68:11: note: place parentheses around the assignment to silence this warning
68 | while(bb = r)
| ^
| ( )
surface_dynamics/flat_surfaces/origamis/lyapunov_exponents.c:68:11: note: use '==' to turn this assignment into an equality comparison
68 | while(bb = r)
| ^
| ==
surface_dynamics/flat_surfaces/origamis/lyapunov_exponents.c:90:8: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
90 | if(j < s[j])
| ~ ^ ~~~~
surface_dynamics/flat_surfaces/origamis/lyapunov_exponents.c:118:8: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
118 | if(j == s[j])
| ~ ^ ~~~~
surface_dynamics/flat_surfaces/origamis/lyapunov_exponents.c:121:8: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
121 | if(j < s[j])
| ~ ^ ~~~~
surface_dynamics/flat_surfaces/origamis/lyapunov_exponents.c:52:22: warning: unused function 'drandGauss' [-Wunused-function]
52 | static inline double drandGauss()
| ^~~~~~~~~~
5 warnings generated.
surface_dynamics/flat_surfaces/origamis/normal_form.c:15:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
15 | if(test = x1[i] - x2[i]) return test;
| ~~~~~^~~~~~~~~~~~~~~
surface_dynamics/flat_surfaces/origamis/normal_form.c:15:11: note: place parentheses around the assignment to silence this warning
15 | if(test = x1[i] - x2[i]) return test;
| ^
| ( )
surface_dynamics/flat_surfaces/origamis/normal_form.c:15:11: note: use '==' to turn this assignment into an equality comparison
15 | if(test = x1[i] - x2[i]) return test;
| ^
| ==
surface_dynamics/flat_surfaces/origamis/normal_form.c:26:11: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
26 | if(test = g1[i] - g2[i]) return test;
| ~~~~~^~~~~~~~~~~~~~~
surface_dynamics/flat_surfaces/origamis/normal_form.c:26:11: note: place parentheses around the assignment to silence this warning
26 | if(test = g1[i] - g2[i]) return test;
| ^
| ( )
surface_dynamics/flat_surfaces/origamis/normal_form.c:26:11: note: use '==' to turn this assignment into an equality comparison
26 | if(test = g1[i] - g2[i]) return test;
| ^
| ==
surface_dynamics/flat_surfaces/origamis/normal_form.c:129:15: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
129 | for(i=0; i<n; ++i)
| ^
surface_dynamics/flat_surfaces/origamis/normal_form.c:142:12: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
142 | for(i=0; i<n; ++i)
| ^
surface_dynamics/flat_surfaces/origamis/normal_form.c:161:15: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
161 | for(i=0; i<n; ++i)
| ^
surface_dynamics/flat_surfaces/origamis/normal_form.c:170:13: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
170 | for(i=0; i<n; SF_seen[i++] = 1);
| ^
surface_dynamics/flat_surfaces/origamis/normal_form.c:184:16: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
184 | for(mi=0; mi < n; ++mi)
| ~~ ^ ~
surface_dynamics/flat_surfaces/origamis/normal_form.c:202:13: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
202 | for(i=0; i<n; ++i)
| ^
surface_dynamics/flat_surfaces/origamis/normal_form.c:210:13: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
210 | for(i=0; i<n-1; ++i)
| ~^~~~
surface_dynamics/flat_surfaces/origamis/normal_form.c:221:8: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
221 | if(i == n-1) /* here SF_xx = SF_xxx */
| ~ ^ ~~~
surface_dynamics/flat_surfaces/origamis/normal_form.c:222:15: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
222 | for(i=0; i < n-1; ++i)
| ~ ^ ~~~
surface_dynamics/flat_surfaces/origamis/normal_form.c:238:13: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
238 | for(i=0; i < n; ++i)
| ~ ^ ~
12 warnings generated.
surface_dynamics/flat_surfaces/origamis/origami_dense.c:12640:33: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
12640 | for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
| ~~~~~~~~~ ^ ~~~~~~~~~
surface_dynamics/flat_surfaces/origamis/origami_dense.c:12740:33: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
12740 | for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
| ~~~~~~~~~ ^ ~~~~~~~~~
surface_dynamics/flat_surfaces/origamis/origami_dense.c:26757:33: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'long' [-Wsign-compare]
26757 | for (__pyx_t_2 = 0; __pyx_t_2 < __pyx_t_10; __pyx_t_2+=1) {
| ~~~~~~~~~ ^ ~~~~~~~~~~
surface_dynamics/flat_surfaces/origamis/origami_dense.c:29499:33: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
29499 | for (__pyx_t_9 = 0; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
| ~~~~~~~~~ ^ ~~~~~~~~~
surface_dynamics/flat_surfaces/origamis/origami_dense.c:39561:35: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
39561 | for (__pyx_t_15 = 0; __pyx_t_15 < __pyx_t_16; __pyx_t_15+=1) {
| ~~~~~~~~~~ ^ ~~~~~~~~~~
surface_dynamics/flat_surfaces/origamis/origami_dense.c:39573:37: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'long' [-Wsign-compare]
39573 | for (__pyx_t_19 = 0; __pyx_t_19 < __pyx_t_18; __pyx_t_19+=1) {
| ~~~~~~~~~~ ^ ~~~~~~~~~~
surface_dynamics/flat_surfaces/origamis/origami_dense.c:69688:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
69688 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:588:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
588 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:69699:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
69699 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:588:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
588 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:69821:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
69821 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:588:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
588 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:69832:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
69832 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:588:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
588 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:71747:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
71747 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:588:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
588 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:71758:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
71758 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:588:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
588 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:72021:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
72021 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:588:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
588 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:72032:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
72032 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/flat_surfaces/origamis/origami_dense.c:588:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
588 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
14 warnings generated.
surface_dynamics/interval_exchanges/generalized_permutation.c:38:19: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
38 | for (i = 0; i < gp->k; ++i)
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/generalized_permutation.c:41:19: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
41 | for (i = 0; i < gp->k; ++i)
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/generalized_permutation.c:44:23: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
44 | for (i = gp->k; i < 2 * gp->n; ++i)
| ~ ^ ~~~~~~~~~
surface_dynamics/interval_exchanges/generalized_permutation.c:47:23: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
47 | for (i = gp->k; i < 2 * gp->n; ++i)
| ~ ^ ~~~~~~~~~
4 warnings generated.
surface_dynamics/interval_exchanges/lin_alg.c:42:17: warning: variable 'norm' set but not used [-Wunused-but-set-variable]
42 | double *vv, norm;
| ^
surface_dynamics/interval_exchanges/lin_alg.c:56:21: warning: variable 'norm' is uninitialized when used here [-Wuninitialized]
56 | norm += (qcc->labels)[i].v[j];
| ^~~~
surface_dynamics/interval_exchanges/lin_alg.c:42:21: note: initialize the variable 'norm' to silence this warning
42 | double *vv, norm;
| ^
| = 0.0
surface_dynamics/interval_exchanges/lin_alg.c:274:29: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
274 | for (i_char = 0; i_char < nb_char; ++i_char)
| ~~~~~~ ^ ~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:281:27: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
281 | for (j = 0; j < qcc->nb_labels; ++j)
| ~ ^ ~~~~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:284:31: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
284 | for (k = 0; k < qcc->degree; ++k)
| ~ ^ ~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:295:27: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
295 | for (j = 0; j < qcc->nb_labels; ++j)
| ~ ^ ~~~~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:298:31: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
298 | for (k = 0; k < qcc->degree; ++k)
| ~ ^ ~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:324:27: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
324 | for (j = 0; j < qcc->nb_labels; ++j)
| ~ ^ ~~~~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:327:31: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
327 | for (k = 0; k < qcc->degree; ++k)
| ~ ^ ~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:341:27: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
341 | for (i = 1; i < dimensions[i_char] - 1; ++i)
| ~ ^ ~~~~~~~~~~~~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:361:31: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
361 | for (j = 0; j < qcc->nb_labels; ++j)
| ~ ^ ~~~~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:364:35: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
364 | for (k = 0; k < qcc->degree; ++k)
| ~ ^ ~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:407:27: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
407 | for (j = 0; j < qcc->nb_labels; ++j)
| ~ ^ ~~~~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:410:31: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
410 | for (k = 0; k < qcc->degree; ++k)
| ~ ^ ~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:433:27: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
433 | for (j = 0; j < qcc->nb_labels; ++j)
| ~ ^ ~~~~~~~~~~~~~~
surface_dynamics/interval_exchanges/lin_alg.c:436:31: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
436 | for (k = 0; k < qcc->degree; ++k)
| ~ ^ ~~~~~~~~~~~
16 warnings generated.
In file included from surface_dynamics/interval_exchanges/lyapunov_exponents.c:1256:
In file included from /Users/miniforge3/envs/sage/lib/python3.12/site-packages/numpy/core/include/numpy/arrayobject.h:5:
In file included from /Users/miniforge3/envs/sage/lib/python3.12/site-packages/numpy/core/include/numpy/ndarrayobject.h:12:
In file included from /Users/miniforge3/envs/sage/lib/python3.12/site-packages/numpy/core/include/numpy/ndarraytypes.h:1929:
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-W#warnings]
17 | #warning "Using deprecated NumPy API, disable it with "
| ^
surface_dynamics/interval_exchanges/lyapunov_exponents.c:5908:28: warning: comparison of integers of different signs: 'Py_ssize_t' (aka 'long') and 'size_t' (aka 'unsigned long') [-Wsign-compare]
5908 | __pyx_t_7 = (__pyx_t_6 == __pyx_cur_scope->__pyx_outer_scope->__pyx_v_degree);
| ~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
surface_dynamics/interval_exchanges/lyapunov_exponents.c:8058:35: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
8058 | for (__pyx_v_i = 0; __pyx_v_i < __pyx_t_14; __pyx_v_i++) {
| ~~~~~~~~~ ^ ~~~~~~~~~~
surface_dynamics/interval_exchanges/lyapunov_exponents.c:13678:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
13678 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/interval_exchanges/lyapunov_exponents.c:573:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
573 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
surface_dynamics/interval_exchanges/lyapunov_exponents.c:13689:21: warning: fallthrough annotation in unreachable code [-Wunreachable-code-fallthrough]
13689 | CYTHON_FALLTHROUGH;
| ^
surface_dynamics/interval_exchanges/lyapunov_exponents.c:573:34: note: expanded from macro 'CYTHON_FALLTHROUGH'
573 | #define CYTHON_FALLTHROUGH attribute((fallthrough))
| ^
5 warnings generated.
surface_dynamics/interval_exchanges/permutation.c:33:15: warning: variable 'j' is incremented both in the loop header and in the loop body [-Wfor-loop-analysis]
33 | ++j;
| ^
surface_dynamics/interval_exchanges/permutation.c:21:35: note: incremented here
21 | for (j = 0; j < degree; ++j)
| ^
1 warning generated.
surface_dynamics/interval_exchanges/quad_cover.c:167:19: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
167 | for (i = 0; i < gp->n; ++i)
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:170:19: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
170 | for (i = 0; i < gp->n; ++i)
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:195:19: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
195 | for (i = 0; i < 2 * gp->n; ++i)
| ~ ^ ~~~~~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:198:17: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
198 | ((i < gp->k) == ((gp->twin)[i] < gp->k));
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:200:28: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
200 | if ((i == 0) || (i == gp->k))
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:205:36: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
205 | if ((i == gp->k - 1) || (i == 2 * gp->n - 1))
| ~ ^ ~~~~~~~~~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:205:16: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
205 | if ((i == gp->k - 1) || (i == 2 * gp->n - 1))
| ~ ^ ~~~~~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:211:15: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
211 | if (i < gp->k)
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:213:31: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
213 | if ((gp->twin)[i] < i)
| ~~~~~~~~~~~~~ ^ ~
surface_dynamics/interval_exchanges/quad_cover.c:218:59: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
218 | if (((gp->twin)[i] < gp->k) || ((gp->twin)[i] > i))
| ~~~~~~~~~~~~~ ^ ~
surface_dynamics/interval_exchanges/quad_cover.c:223:40: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
223 | (qcc->intervals)[i].is_top = i < gp->k;
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:226:60: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
226 | || ((qcc->intervals)[i].orientation == -1 && i >= gp->k);
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:225:47: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
225 | && i < gp->k)
| ~ ^ ~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:457:18: warning: unused variable 'd' [-Wunused-variable]
457 | size_t j, n, d, k;
| ^
surface_dynamics/interval_exchanges/quad_cover.c:457:21: warning: unused variable 'k' [-Wunused-variable]
457 | size_t j, n, d, k;
| ^
surface_dynamics/interval_exchanges/quad_cover.c:458:9: warning: unused variable 'verbose' [-Wunused-variable]
458 | int verbose = 0;
| ^~~~~~~
surface_dynamics/interval_exchanges/quad_cover.c:798:15: warning: unused variable 'j' [-Wunused-variable]
798 | size_t i, j, nb_ren = 0;
| ^
surface_dynamics/interval_exchanges/quad_cover.c:799:12: warning: unused variable 'buffer' [-Wunused-variable]
799 | double buffer;
| ^~~~~~
18 warnings generated.
surface_dynamics/interval_exchanges/int_iet.c:282:66: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
282 | fprintf(stderr, "length top=%lu while length bot=%lu\n", ltop, lbot);
| ~~~ ^~~~
| %llu
surface_dynamics/interval_exchanges/int_iet.c:282:72: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
282 | fprintf(stderr, "length top=%lu while length bot=%lu\n", ltop, lbot);
| ~~~ ^~~~
| %llu
surface_dynamics/interval_exchanges/int_iet.c:310:33: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
310 | fprintf(stream, "%lu ", (t->labels[j]).length);
| ~~~ ^~~~~~~~~~~~~~~~~~~~~
| %llu
surface_dynamics/interval_exchanges/int_iet.c:315:33: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
315 | fprintf(stream, "%lu ", (t->labels[j]).height);
| ~~~ ^~~~~~~~~~~~~~~~~~~~~
| %llu
4 warnings generated.
surface_dynamics/interval_exchanges/int_vector.c:43:30: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
43 | printf("nfree = %lu\n", t->nfree);
| ~~~ ^~~~~~~~
| %llu
surface_dynamics/interval_exchanges/int_vector.c:44:30: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
44 | printf("nother = %lu\n", t->nother);
| ~~~ ^~~~~~~~~
| %llu
surface_dynamics/interval_exchanges/int_vector.c:47:25: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
47 | printf( " %lu", t->xfree[i]);
| ~~~ ^~~~~~~~~~~
| %llu
surface_dynamics/interval_exchanges/int_vector.c:51:24: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
51 | printf(" %lu", t->xtop[i]);
| ~~~ ^~~~~~~~~~
| %llu
surface_dynamics/interval_exchanges/int_vector.c:55:24: warning: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat]
55 | printf(" %lu", t->xbot[i]);
| ~~~ ^~~~~~~~~~
| %llu
5 warnings generated.
In file included from surface_dynamics/interval_exchanges/integer_iet.c:1252:
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:117:5: error: use of undeclared identifier 'cysigs'
117 | cysigs.s = message;
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:132:9: error: use of undeclared identifier 'cysigs'
132 | if (cysigs.sig_on_count > 0)
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:134:9: error: use of undeclared identifier 'cysigs'
134 | cysigs.sig_on_count++;
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:149:9: error: call to undeclared function 'unlikely'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
149 | if (unlikely(jmpret > 0))
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:152:9: error: call to undeclared function '_sig_on_recover'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
152 | _sig_on_recover();
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:158:5: error: use of undeclared identifier 'cysigs'
158 | cysigs.sig_on_count = 1;
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:166:18: error: use of undeclared identifier 'cysigs'
166 | if (unlikely(cysigs.interrupt_received))
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:168:9: error: call to undeclared function '_sig_on_interrupt_received'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
168 | _sig_on_interrupt_received();
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:190:9: error: call to undeclared function 'unlikely'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
190 | if (unlikely(cysigs.sig_on_count <= 0))
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:190:18: error: use of undeclared identifier 'cysigs'
190 | if (unlikely(cysigs.sig_on_count <= 0))
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:192:9: error: call to undeclared function '_sig_off_warning'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
192 | _sig_off_warning(file, line);
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:196:11: error: use of undeclared identifier 'cysigs'
196 | --cysigs.sig_on_count;
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:218:9: error: call to undeclared function 'unlikely'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
218 | if (unlikely(cysigs.interrupt_received) && cysigs.sig_on_count == 0)
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:218:18: error: use of undeclared identifier 'cysigs'
218 | if (unlikely(cysigs.interrupt_received) && cysigs.sig_on_count == 0)
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:218:48: error: use of undeclared identifier 'cysigs'
218 | if (unlikely(cysigs.interrupt_received) && cysigs.sig_on_count == 0)
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:220:9: error: call to undeclared function '_sig_on_interrupt_received'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
220 | _sig_on_interrupt_received();
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:252:7: error: use of undeclared identifier 'cysigs'
252 | ++cysigs.block_sigint;
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:265:7: error: use of undeclared identifier 'cysigs'
265 | --cysigs.block_sigint;
| ^
/Users/miniforge3/envs/sage/lib/python3.12/site-packages/cysignals/macros.h:267:9: error: call to undeclared function 'unlikely'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
267 | if (unlikely(cysigs.interrupt_received))
| ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
error: command '/Users/miniforge3/envs/sage/bin/x86_64-apple-darwin13.4.0-clang' failed with exit code 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for surface-dynamics
Running setup.py clean for surface-dynamics
Failed to build surface-dynamics
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (surface-dynamics)
I have also tried installation from the source via cloning from github repo and running python setup.py. But it was also the same; something was wrong with the CPP backends.
Any idea what is problematic here?
Hello,
After installing
sagesuccessfully, I am trying to installsurface_dynamicson macOS 12.6.7But no matter which way I try, I get an error which to me seems to be related to CPP-related dependencies.
I manually checked some of them and to me it looked like all the required versions are installed correctly for instance cysignals, cypari2, cython, etc.
Also via
gcc --versionI confirm that a C compiler is installed on my machine:I did not manage to pin down the problem. But this is the log for command
sage -pip install surface-dynamics:I have also tried installation from the source via cloning from github repo and running
python setup.py. But it was also the same; something was wrong with the CPP backends.Any idea what is problematic here?