On Sun, Jan 12, 2020 at 1:37 PM Markus Wageringel <markus.wagerin...@gmail.com> wrote: > > I manually set those CVXOPT_... variables in the spkg-install file for now > and building cvxopt then succeeded. > > Building Sage now almost completes, but the file src/sage/libs/readline.pyx > fails to compile with these errors: > > > [1/1] gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG > -g -fwrapv -O3 -Wall -Wno-unused -I./sage/cpython -Isage/cpython > -I/Applications/SageMath/local/include -I/Applications/SageMath/src > -I/Applications/SageMath/src/sage/ext > -I/Applications/SageMath/local/include/python3.7m > -I/Applications/SageMath/local/lib/python3.7/site-packages/numpy/core/include > -Ibuild/cythonized -I/Applications/SageMath/local/include/python3.7m -c > build/cythonized/sage/libs/readline.c -o > build/temp.macosx-10.9-x86_64-3.7/build/cythonized/sage/libs/readline.o > -fno-strict-aliasing -DCYTHON_CLINE_IN_TRACEBACK=1 -std=c99 > build/cythonized/sage/libs/readline.c:1446:36: error: use of undeclared > identifier 'rl_catch_signals' > __pyx_t_1 = __Pyx_PyInt_From_int(rl_catch_signals); if > (unlikely(!__pyx_t_1)) __PYX_ERR(0, 87, __pyx_L1_error) > ^ > build/cythonized/sage/libs/readline.c:1468:36: error: use of undeclared > identifier 'rl_catch_sigwinch' > __pyx_t_1 = __Pyx_PyInt_From_int(rl_catch_sigwinch); if > (unlikely(!__pyx_t_1)) __PYX_ERR(0, 88, __pyx_L1_error) > ^ > build/cythonized/sage/libs/readline.c:1542:36: warning: implicit > declaration of function 'rl_set_signals' is invalid in C99 > [-Wimplicit-function-declaration] > __pyx_t_1 = __Pyx_PyInt_From_int(rl_set_signals()); if > (unlikely(!__pyx_t_1)) __PYX_ERR(0, 104, __pyx_L1_error) > ^ > build/cythonized/sage/libs/readline.c:1604:36: warning: implicit > declaration of function 'rl_clear_signals' is invalid in C99 > [-Wimplicit-function-declaration] > __pyx_t_1 = __Pyx_PyInt_From_int(rl_clear_signals()); if > (unlikely(!__pyx_t_1)) __PYX_ERR(0, 120, __pyx_L1_error) > ^ > build/cythonized/sage/libs/readline.c:1849:36: error: passing 'void' to > parameter of incompatible type 'int' > __pyx_t_1 = __Pyx_PyInt_From_int(rl_forced_update_display()); if > (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error) > ^~~~~~~~~~~~~~~~~~~~~~~~~~ > ... > > > The Homebrew readline is version 8.0.1. In particular, the header file > `/usr/local/opt/readline/include/readline/readline.h` does contain > `rl_catch_signals`, `rl_catch_sigwinch` and `rl_clear_signals`. > > The system readline in `/usr/include/readline/readline.h` does not contain > these though, so it looks like that is used instead.
One may overrule Homebrew to actually force it to install readline in /usr/local Otherwise, it's indeed a problem. I've opened https://trac.sagemath.org/ticket/29000 to deal with this. > > > Am 12.01.2020 um 10:58 schrieb Dima Pasechnik <dimp...@gmail.com>: > > On Sun, Jan 12, 2020 at 12:10 AM Markus Wageringel > <markus.wagerin...@gmail.com> wrote: > > > On macOS 10.13.6, trying to make use of #27870 using Homebrew's openblas, the > build fails for me at cvxopt: > > gcc -bundle -undefined dynamic_lookup -L/Applications/SageMath/local/lib > -Wl,-rpath,/Applications/SageMath/local/lib -L/usr/local/opt/openssl/lib -L. > -L/Applications/SageMath/local/lib > -Wl,-rpath,/Applications/SageMath/local/lib -L/usr/local/opt/openssl/lib > -L/Applications/SageMath/local/lib > -Wl,-rpath,/Applications/SageMath/local/lib > build/temp.macosx-10.9-x86_64-3.7/src/C/gsl.o -L/Applications/SageMath/local > -L/Applications/SageMath/local -L/Applications/SageMath/local/lib -lm -lgsl > -lopenblas -o > build/lib.macosx-10.9-x86_64-3.7/cvxopt/gsl.cpython-37m-darwin.so > ld: library not found for -lopenblas > clang: error: linker command failed with exit code 1 (use -v to see > invocation) > error: command 'gcc' failed with exit status 1 > Running setup.py install for cvxopt: finished with status 'error' > > As openblas and readline are keg-only, I ran configure as > > ./configure \ > LDFLAGS="-L/usr/local/opt/readline/lib -L/usr/local/opt/openblas/lib > -L/usr/local/opt/mpfr/lib" \ > CPPFLAGS="-I/usr/local/opt/readline/include > -I/usr/local/opt/openblas/include" \ > > PKG_CONFIG_PATH="/usr/local/opt/readline/lib/pkgconfig:/usr/local/opt/openblas/lib/pkgconfig" > > but cvxopt does not seem to use this. > > > cvxopt really needs env.vars CVXOPT_BLAS_LIB_DIR, CVXOPT_BLAS_LIB, > CVXOPT_LAPACK_LIB set, it does not use pkgconf. > (but it should). > We can propose an upstream fix for this, and meanwhile set these vars > in spkg-install > > > -- > You received this message because you are subscribed to the Google Groups > "sage-devel" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sage-devel+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sage-devel/BBB346E3-DBD1-44B4-AD7A-5D4B0B9D1BF5%40gmail.com. -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/CAAWYfq0AKCY-x5U1%3DDio1kN8zDGLYxX8mCi3F2idPTLddxmXVQ%40mail.gmail.com.