Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

opensuse-tumbleweed: sagelib build fails #33153

Closed
mkoeppe opened this issue Jan 12, 2022 · 31 comments
Closed

opensuse-tumbleweed: sagelib build fails #33153

mkoeppe opened this issue Jan 12, 2022 · 31 comments

Comments

@mkoeppe
Copy link
Member

mkoeppe commented Jan 12, 2022

As reported in https://groups.google.com/g/sage-devel/c/81unMG60MyU/m/JdMKMFOSBQAJ

Workaround: export CFLAGS="${CFLAGS} -Wno-error=return-type" (https://groups.google.com/g/sage-devel/c/81unMG60MyU/m/TfBT8KOsBQAJ)

This is caused by strict compiler flags leaking from the opensuse python3 package into user packages via sysconfig/distutils.
Same mechanism as the failures with misconfigured python3 in #31132 (homebrew), #33078 (cygwin), #32531 (pyenv)

Upstream issue:

Upstream: Reported upstream. No feedback yet.

CC: @dimpase @orlitzky

Component: build

Author: Matthias Koeppe

Branch: fa2e672

Reviewer: Michael Orlitzky

Issue created by migration from https://trac.sagemath.org/ticket/33153

@mkoeppe mkoeppe added this to the sage-9.5 milestone Jan 12, 2022
@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

Changed upstream from Not yet reported upstream; Will do shortly. to Reported upstream. No feedback yet.

@mkoeppe

This comment has been minimized.

@orlitzky
Copy link
Contributor

comment:2

For our part, we already warn when the sysconfig flags contain -I or -L. We could do the same for -Werror.

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

comment:3

Good idea.

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

comment:4

In contrast to the trouble with -I and -L (for which the sysconfig-provided flags are coming first and therefore cannot be overridden), in this case we can work around it by adding the -Wno-error to our flags for the affected extension modules...

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

comment:5

in src/sage/libs/linbox/fflas.pxd

@orlitzky
Copy link
Contributor

comment:6

Ok, that's a better idea, I'm trying it.

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

comment:8

Need to check though if this flag works with ancient compilers that we still support


New commits:

3fdfae9src/sage/libs/linbox/fflas.pxd: Add -Wno-error=return-type

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

Commit: 3fdfae9

@orlitzky
Copy link
Contributor

comment:9

The upstream bug is already fixed in fflas-ffpack-2.4.3. Repology says that tumbleweed is at 2.5.0. I wonder what version the reporter is using? Maybe we just bump the minimum version in spkg-configure.m4 up from 2.4.0 to 2.4.3. Again according to repology that shouldn't hurt anyone.

@orlitzky
Copy link
Contributor

comment:10

Replying to @orlitzky:

The upstream bug is already fixed in fflas-ffpack-2.4.3.

Nevermind. The github tag doesn't match the release tarball.

@orlitzky
Copy link
Contributor

comment:11

Anyway, I've tried to clobber my sysconfig but the build still succeeded. My system header is missing the return value. So I wonder why it worked:

sage: import sysconfig
sage: sysconfig.get_config_var('CFLAGS')
'-Werror=return-type -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -pipe -march=native -fwrapv'
sage: import distutils.sysconfig as dsc
sage: dsc.get_config_var('CFLAGS')
'-Werror=return-type -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -pipe -march=native -fwrapv'

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

comment:12

Perhaps a sufficiently smart compiler has optimized the issue away?

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

Author: Matthias Koeppe

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 12, 2022

comment:13

Replying to @mkoeppe:

Need to check though if this flag works with ancient compilers that we still support

tox -e docker-ubuntu-trusty-standard succeeded, so I think we're in good shape

@orlitzky
Copy link
Contributor

comment:14

Replying to @mkoeppe:

Perhaps a sufficiently smart compiler has optimized the issue away?

Not this time, I used -O0.

@orlitzky
Copy link
Contributor

comment:15

I haven't figured out how to get cython to show me WTF it's actually doing yet, but watching ps auxwww, I can see that the sysconfig flags aren't being used while it's compiling pyx files.

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 13, 2022

comment:16

Is that using standard Sage Python packages, or using some system python packages?

@orlitzky
Copy link
Contributor

comment:17

Replying to @mkoeppe:

Is that using standard Sage Python packages, or using some system python packages?

Unmodified rc0 with the following packages:

4ti2-1.6.7.p0:                               no suitable system package; optional, use "./configure --enable-4ti2" to install
admcycles-none:                              optional pip package; use "./sage -i admcycles" to install
alabaster-0.7.12:                            standard, will be installed as an SPKG
appdirs-1.4.4:                               not required on your platform; SPKG will not be installed
appnope-0.1.2:                               standard, will be installed as an SPKG
arb-2.19.0.p0:                               using system package; SPKG will not be installed
argcomplete-1.12.3:                          standard, will be installed as an SPKG
argon2_cffi-20.1.0:                          standard, but disabled using configure option
attrs-21.2.0:                                standard, will be installed as an SPKG
awali-1.0.2-190218:                          experimental, use "./configure --enable-awali" to install
babel-2.9.1:                                 standard, will be installed as an SPKG
backcall-0.2.0:                              standard, will be installed as an SPKG
barvinok-0.41.1:                             optional, use "./configure --enable-barvinok" to install
beautifulsoup4-none:                         optional pip package; use "./sage -i beautifulsoup4" to install
beniget-0.4.1:                               standard, will be installed as an SPKG
benzene-20130630:                            optional, use "./configure --enable-benzene" to install
biopython-none:                              optional pip package; use "./sage -i biopython" to install
bleach-4.1.0:                                standard, but disabled using configure option
bliss-0.73+debian-1+sage-2016-08-02.p0:      optional, use "./configure --enable-bliss" to install
boost_cropped-1.66.0.p0:                     using system package; SPKG will not be installed
brial-1.2.8:                                 using system package; SPKG will not be installed
buckygen-1.1:                                optional, use "./configure --enable-buckygen" to install
bzip2-1.0.6-20150304.p0:                     using system package; SPKG will not be installed
cbc-2.9.4.p0:                                no suitable system package; optional, use "./configure --enable-cbc" to install
ccache-3.3.4:                                optional, use "./configure --enable-ccache" to install
cddlib-0.94m:                                using system package; SPKG will not be installed
certifi-2021.10.8:                           standard, will be installed as an SPKG
cffi-1.15.0:                                 standard, will be installed as an SPKG
charset_normalizer-2.0.4:                    standard, will be installed as an SPKG
cliquer-1.22:                                using system package; SPKG will not be installed
cmake-3.21.0:                                using system package; SPKG will not be installed
cocoalib-0.99564:                            experimental, use "./configure --enable-cocoalib" to install
combinatorial_designs-20140630.p0:           standard, will be installed as an SPKG
configure-464e8c3d08cd20837a05fc6afa7386f89a309133:came preinstalled with the SageMath tarball
conway_polynomials-0.5:                      standard, will be installed as an SPKG
coxeter3-8ac9c71723c8ca57a836d6381aed125261e44e9e.p0:no suitable system package; optional, use "./configure --enable-coxeter3" to install
cppy-1.1.0:                                  standard, will be installed as an SPKG
cryptominisat-5.6.8:                         optional, use "./configure --enable-cryptominisat" to install
csdp-6.2.p1:                                 optional, use "./configure --enable-csdp" to install
cunningham_tables-1.0:                       optional, use "./configure --enable-cunningham_tables" to install
curl-7.62.0.p0:                              using system package; SPKG will not be installed
cvxopt-1.2.7:                                standard, but disabled using configure option
cycler-0.11.0:                               standard, will be installed as an SPKG
cypari-2.1.2:                                standard, will be installed as an SPKG
cysignals-1.11.2:                            standard, will be installed as an SPKG
cython-0.29.24:                              standard, will be installed as an SPKG
d3js-3.4.8:                                  optional, use "./configure --enable-d3js" to install
database_cremona_ellcurve-20190911:          optional, use "./configure --enable-database_cremona_ellcurve" to install
database_jones_numfield-4:                   optional, use "./configure --enable-database_jones_numfield" to install
database_knotinfo-2021.10.1:                 optional, use "./configure --enable-database_knotinfo" to install
database_kohel-20160724:                     optional, use "./configure --enable-database_kohel" to install
database_mutation_class-1.0:                 optional, use "./configure --enable-database_mutation_class" to install
database_odlyzko_zeta-20061209:              optional, use "./configure --enable-database_odlyzko_zeta" to install
database_stein_watkins-20110713:             optional, use "./configure --enable-database_stein_watkins" to install
database_stein_watkins_mini-20070827:        optional, use "./configure --enable-database_stein_watkins_mini" to install
database_symbolic_data-20070206:             optional, use "./configure --enable-database_symbolic_data" to install
dateutil-2.8.2:                              standard, will be installed as an SPKG
debugpy-1.4.1:                               optional, use "./configure --enable-debugpy" to install
decorator-4.4.2:                             standard, will be installed as an SPKG
deformation-20210503:                        experimental, use "./configure --enable-deformation" to install
defusedxml-0.6.0:                            standard, but disabled using configure option
distlib-0.3.3:                               not required on your platform; SPKG will not be installed
docutils-0.17.1:                             standard, will be installed as an SPKG
dot2tex-2.11.3.p0:                           optional, use "./configure --enable-dot2tex" to install
e_antic-0.1.9:                               optional, use "./configure --enable-e_antic" to install
ecl-21.2.1:                                  using system package; SPKG will not be installed
eclib-20210625:                              using system package; SPKG will not be installed
ecm-7.0.4.p2:                                using system package; SPKG will not be installed
elliptic_curves-0.8.1:                       standard, will be installed as an SPKG
entrypoints-0.3:                             standard, will be installed as an SPKG
fflas_ffpack-2.4.3.p0:                       using system package; SPKG will not be installed
ffmpeg-none:                                 using system package
filelock-3.0.12:                             not required on your platform; SPKG will not be installed
flint-2.7.1.p0:                              using system package; SPKG will not be installed
flintqs-1.0.p0:                              using system package; SPKG will not be installed
flit_core-3.4.0:                             standard, will be installed as an SPKG
fonttools-4.28.4:                            standard, will be installed as an SPKG
fplll-5.4.1:                                 using system package; SPKG will not be installed
fpylll-0.5.6:                                standard, will be installed as an SPKG
freetype-2.10.4:                             using system package; SPKG will not be installed
fricas-1.3.7.p1:                             optional, use "./configure --enable-fricas" to install
frobby-0.9.0.p2:                             optional, use "./configure --enable-frobby" to install
gambit-15.1.1.p0:                            experimental, use "./configure --enable-gambit" to install
gap-4.11.1:                                  standard, will be installed as an SPKG
gap3-04jul17:                                experimental, use "./configure --enable-gap3" to install
gap_jupyter-0.9:                             optional, use "./configure --enable-gap_jupyter" to install
gap_packages-4.11.1:                         optional, use "./configure --enable-gap_packages" to install
gast-0.5.2:                                  standard, will be installed as an SPKG
gc-8.0.4:                                    using system package; SPKG will not be installed
gcc-10.3.0:                                  using system package; SPKG will not be installed
gdb-8.2:                                     experimental, use "./configure --enable-gdb" to install
gengetopt-2.23:                              using system package; SPKG will not be installed
gf2x-1.3.0:                                  using system package; SPKG will not be installed
gfan-0.6.2.p1:                               using system package; SPKG will not be installed
gfortran-10.3.0:                             using system package; SPKG will not be installed
giac-1.6.0.47p3:                             using system package; SPKG will not be installed
git-none:                                    using system package
givaro-4.1.1:                                using system package; SPKG will not be installed
glpk-5.0.p0:                                 using system package; SPKG will not be installed
glucose-4.1:                                 optional, use "./configure --enable-glucose" to install
gmp-6.2.1:                                   using system package; SPKG will not be installed
gmpy2-2.1.0rc1:                              standard, will be installed as an SPKG
gp2c-0.0.10.p0:                              no suitable system package; optional, use "./configure --enable-gp2c" to install
graphs-20210214.p0:                          standard, will be installed as an SPKG
graphviz-none:                               no suitable system package; optional
gsl-2.7:                                     using system package; SPKG will not be installed
html5lib-1.1:                                standard, will be installed as an SPKG
iconv-1.15:                                  using system package; SPKG will not be installed
idna-3.2:                                    standard, will be installed as an SPKG
igraph-0.8.3:                                no suitable system package; optional, use "./configure --enable-igraph" to install
imagemagick-none:                            using system package
imagesize-1.2.0:                             standard, will be installed as an SPKG
iml-1.0.4p1.p2:                              using system package; SPKG will not be installed
importlib_metadata-4.8.2:                    standard, will be installed as an SPKG
importlib_resources-5.2.2:                   standard, will be installed as an SPKG
info-6.8:                                    using system package; SPKG will not be installed
ipykernel-6.6.0:                             standard, will be installed as an SPKG
ipympl-0.7.0:                                optional, use "./configure --enable-ipympl" to install
ipython-7.29.0:                              standard, will be installed as an SPKG
ipython_genutils-0.2.0:                      standard, will be installed as an SPKG
ipywidgets-7.6.5:                            standard, will be installed as an SPKG
isl-0.20:                                    using system package; SPKG will not be installed
jedi-0.18.1:                                 standard, will be installed as an SPKG
jinja2-2.11.2:                               standard, will be installed as an SPKG
jmol-14.29.52:                               standard, will be installed as an SPKG
jsonschema-3.2.0:                            standard, but disabled using configure option
jupymake-0.9:                                optional, use "./configure --enable-jupymake" to install
jupyter_client-7.1.0:                        standard, will be installed as an SPKG
jupyter_core-4.9.1:                          standard, will be installed as an SPKG
jupyter_jsmol-0.2.4:                         standard, but disabled using configure option
jupyter_packaging-0.7.12:                    optional, use "./configure --enable-jupyter_packaging" to install
jupyterlab-none:                             optional pip package; use "./sage -i jupyterlab" to install
jupyterlab_pygments-0.1.2:                   standard, will be installed as an SPKG
jupyterlab_widgets-2.0:                      optional, use "./configure --enable-jupyterlab_widgets" to install
kenzo-1.1.10:                                optional, use "./configure --enable-kenzo" to install
kiwisolver-1.3.2:                            standard, will be installed as an SPKG
latte_int-1.7.6:                             optional, use "./configure --enable-latte_int" to install
lcalc-2.0.5:                                 using system package; SPKG will not be installed
libatomic_ops-7.6.10:                        using system package; SPKG will not be installed
libbraiding-1.1:                             using system package; SPKG will not be installed
libffi-3.2.1:                                using system package; SPKG will not be installed
libgd-2.3.2:                                 using system package; SPKG will not be installed
libgraphviz-none:                            no suitable system package; optional
libhomfly-1.02r6:                            using system package; SPKG will not be installed
liblzma-5.2.5:                               using system package; SPKG will not be installed
libnauty-none:                               using system package; SPKG will not be installed
libogg-1.3.1.p0:                             optional, use "./configure --enable-libogg" to install
libpng-1.6.29.p1:                            using system package; SPKG will not be installed
libsemigroups-1.1.0:                         no suitable system package; optional, use "./configure --enable-libsemigroups" to install
libtheora-1.1.1:                             experimental, use "./configure --enable-libtheora" to install
libxml2-none:                                using system package
lidia-2.3.0+latte-patches-2019-05-02:        optional, use "./configure --enable-lidia" to install
lie-2.2.2:                                   experimental, use "./configure --enable-lie" to install
linbox-1.6.3.p1:                             standard, will be installed as an SPKG
llvm-none:                                   not required on your platform
lrcalc-1.2.p1:                               using system package; SPKG will not be installed
lrslib-071b+autotools-2021-07-13:            no suitable system package; optional, use "./configure --enable-lrslib" to install
m4ri-20200115:                               using system package; SPKG will not be installed
m4rie-20200115:                              using system package; SPKG will not be installed
markupsafe-1.1.1:                            standard, will be installed as an SPKG
mathics-4.0.0:                               optional, use "./configure --enable-mathics" to install
mathics_scanner-1.2.4:                       optional, use "./configure --enable-mathics_scanner" to install
mathjax-2.7.4.p0:                            standard, will be installed as an SPKG
matplotlib-3.5.1:                            standard, will be installed as an SPKG
matplotlib_inline-0.1.2:                     standard, will be installed as an SPKG
maxima-5.45.0.p0:                            standard, will be installed as an SPKG
mcqd-1.0.p0:                                 optional, use "./configure --enable-mcqd" to install
meataxe-1.0.1:                               optional, use "./configure --enable-meataxe" to install
memory_allocator-0.1.1:                      standard, will be installed as an SPKG
mistune-0.8.4:                               standard, but disabled using configure option
modular_decomposition-20100607:              experimental, use "./configure --enable-modular_decomposition" to install
mpc-1.1.0:                                   using system package; SPKG will not be installed
mpfi-1.5.2:                                  using system package; SPKG will not be installed
mpfr-4.0.1.p0:                               using system package; SPKG will not be installed
mpfrcx-0.5:                                  optional, use "./configure --enable-mpfrcx" to install
mpmath-1.2.1:                                standard, will be installed as an SPKG
nauty-27r1.p1:                               using system package; SPKG will not be installed
nbclient-0.5.9:                              standard, but disabled using configure option
nbconvert-6.1.0:                             standard, but disabled using configure option
nbformat-5.1.3:                              standard, but disabled using configure option
ncurses-6.0.p0:                              using system package; SPKG will not be installed
nest_asyncio-1.5.1:                          standard, will be installed as an SPKG
networkx-2.6.3:                              standard, will be installed as an SPKG
nibabel-none:                                optional pip package; use "./sage -i nibabel" to install
ninja_build-1.8.2:                           using system package; SPKG will not be installed
nodeenv-none:                                optional pip package; use "./sage -i nodeenv" to install
nodejs-12.18.3:                              optional, use "./configure --enable-nodejs" to install
normaliz-3.8.10:                             optional, use "./configure --enable-normaliz" to install
notebook-6.4.6:                              standard, but disabled using configure option
notedown-1.5.1:                              optional, use "./configure --enable-notedown" to install
ntl-11.4.3:                                  using system package; SPKG will not be installed
numpy-1.21.4:                                standard, will be installed as an SPKG
openblas-0.3.18:                             using system package; SPKG will not be installed
openssl-3.0.1:                               not required on your platform; SPKG will not be installed
ore_algebra-none:                            optional pip package; use "./sage -i ore_algebra" to install
p_group_cohomology-3.3.2:                    optional, use "./configure --enable-p_group_cohomology" to install
packaging-21.0:                              standard, will be installed as an SPKG
palettable-3.3.0:                            optional, use "./configure --enable-palettable" to install
palp-2.11:                                   already installed as an SPKG
pandoc-none:                                 no suitable system package; optional
pandoc_attributes-8bc82f6d:                  optional, use "./configure --enable-pandoc_attributes" to install
pandocfilters-1.4.3:                         standard, but disabled using configure option
pari-2.13.3:                                 using system package; SPKG will not be installed
pari_elldata-20161017:                       using system package; SPKG will not be installed
pari_galdata-20080411.p0:                    using system package; SPKG will not be installed
pari_galpol-20180625:                        using system package; SPKG will not be installed
pari_nftables-20080929:                      using system package; SPKG will not be installed
pari_seadata-20090618:                       using system package; SPKG will not be installed
pari_seadata_small-20090618.p0:              using system package; SPKG will not be installed
parso-0.8.2:                                 standard, will be installed as an SPKG
patch-2.7.5:                                 using system package; SPKG will not be installed
pcre-8.40.p2:                                using system package; SPKG will not be installed
pdf2svg-none:                                no suitable system package; optional
perl_cpan_polymake_prereq-none:              no suitable system package; optional
perl_mongodb-none:                           no suitable system package; optional
perl_term_readline_gnu-1.35:                 using system package; SPKG will not be installed
pexpect-4.8.0:                               standard, will be installed as an SPKG
pickleshare-0.7.5:                           standard, will be installed as an SPKG
pillow-8.4.0:                                standard, will be installed as an SPKG
pint-0.17:                                   optional, use "./configure --enable-pint" to install
pip-21.3.1:                                  standard, will be installed as an SPKG
pkgconf-0.9.7.p2:                            using system package; SPKG will not be installed
pkgconfig-1.5.5:                             standard, will be installed as an SPKG
planarity-3.0.1.0:                           using system package; SPKG will not be installed
plantri-4.5:                                 optional, use "./configure --enable-plantri" to install
pluggy-1.0.0:                                standard, will be installed as an SPKG
ply-3.11:                                    standard, will be installed as an SPKG
polylib-5.22.5:                              optional, use "./configure --enable-polylib" to install
polymake-4.5:                                no suitable system package; optional, use "./configure --enable-polymake" to install
polytopes_db-20170220.p0:                    standard, will be installed as an SPKG
polytopes_db_4d-1.0:                         optional, use "./configure --enable-polytopes_db_4d" to install
ppl-1.2.p1:                                  using system package; SPKG will not be installed
pplpy-0.8.6:                                 standard, will be installed as an SPKG
pplpy_doc-0.8.6:                             standard, will be installed as an SPKG
primecount-7.1:                              using system package; SPKG will not be installed
primecountpy-0.1.0:                          standard, will be installed as an SPKG
primesieve-7.6:                              using system package; SPKG will not be installed
prometheus_client-0.11.0:                    standard, but disabled using configure option
prompt_toolkit-3.0.22:                       standard, will be installed as an SPKG
ptyprocess-0.5.1.p0:                         standard, will be installed as an SPKG
py-1.10.0:                                   standard, will be installed as an SPKG
pybind11-2.8.1:                              standard, will be installed as an SPKG
pybtex-none:                                 optional pip package; use "./sage -i pybtex" to install
pycosat-0.6.3:                               optional, use "./configure --enable-pycosat" to install
pycparser-2.20:                              standard, will be installed as an SPKG
pycygwin-0.1:                                standard, will be installed as an SPKG
pyflakes-none:                               optional pip package; use "./sage -i pyflakes" to install
pygments-2.10.0:                             standard, will be installed as an SPKG
pygraphviz-none:                             optional pip package; use "./sage -i pygraphviz" to install
pynormaliz-2.14:                             optional, use "./configure --enable-pynormaliz" to install
pyparsing-3.0.6:                             standard, will be installed as an SPKG
pyrsistent-0.18.0:                           standard, will be installed as an SPKG
pysingular-0.9.7:                            optional, use "./configure --enable-pysingular" to install
pytest-none:                                 optional pip package; use "./sage -i pytest" to install
python3-3.9.9:                               using system package; SPKG will not be installed
python_igraph-0.8.3:                         optional, use "./configure --enable-python_igraph" to install
pythran-0.10.0:                              standard, will be installed as an SPKG
pytz-2021.3:                                 standard, will be installed as an SPKG
pyx-none:                                    optional pip package; use "./sage -i pyx" to install
pyzmq-22.3.0:                                standard, will be installed as an SPKG
qepcad-B.1.72:                               experimental, use "./configure --enable-qepcad" to install
qhull-2020-src-8.0.2:                        using system package; SPKG will not be installed
r-3.6.3:                                     using system package; SPKG will not be installed
r_jupyter-none:                              optional, use "./configure --enable-r_jupyter" to install
ratpoints-2.1.3.p5:                          standard, will be installed as an SPKG
readline-8.0:                                using system package; SPKG will not be installed
requests-2.26.0:                             standard, will be installed as an SPKG
rpy2-3.3.6:                                  standard, but disabled using configure option
rst2ipynb-0.2.3:                             optional, use "./configure --enable-rst2ipynb" to install
rubiks-20070912.p21:                         optional, use "./configure --enable-rubiks" to install
rw-0.9:                                      using system package; SPKG will not be installed
saclib-2.2.7:                                optional, use "./configure --enable-saclib" to install
sage_conf-9.5.rc0:                           standard, will be installed as an SPKG
sage_docbuild-9.5.rc0:                       standard, will be installed as an SPKG
sage_flatsurf-none:                          optional pip package; use "./sage -i sage_flatsurf" to install
sage_numerical_backends_coin-9.0b12:         optional, use "./configure --enable-sage_numerical_backends_coin" to install
sage_numerical_backends_cplex-9.0b12:        optional, use "./configure --enable-sage_numerical_backends_cplex" to install
sage_numerical_backends_gurobi-9.3.1:        optional, use "./configure --enable-sage_numerical_backends_gurobi" to install
sage_setup-9.5.rc0:                          standard, will be installed as an SPKG
sage_sws2rst-9.5.rc0:                        optional, use "./configure --enable-sage_sws2rst" to install
sagelib-9.5.rc0:                             standard, will be installed as an SPKG
sagemath_doc_html-none:                      standard, will be installed as an SPKG
sagemath_doc_pdf-none:                       optional, use "./configure --enable-sagemath_doc_pdf" to install
sagenb_export-3.3:                           standard, but disabled using configure option
sagetex-3.5:                                 standard, will be installed as an SPKG
scipoptsuite-5.0.1:                          experimental, use "./configure --enable-scipoptsuite" to install
scipy-1.7.2:                                 standard, will be installed as an SPKG
send2trash-1.8.0:                            standard, but disabled using configure option
setuptools-59.2.0:                           standard, will be installed as an SPKG
setuptools_scm-6.3.2:                        standard, will be installed as an SPKG
setuptools_scm_git_archive-1.1:              standard, will be installed as an SPKG
setuptools_wheel-59.2.0:                     standard, will be installed as an SPKG
simplegeneric-0.8.1.p0:                      standard, will be installed as an SPKG
singular-4.2.1p3:                            using system package; SPKG will not be installed
singular_jupyter-0.9.7:                      optional, use "./configure --enable-singular_jupyter" to install
sip-4.18:                                    optional, use "./configure --enable-sip" to install
sirocco-2.1.0:                               optional, use "./configure --enable-sirocco" to install
six-1.16.0:                                  standard, will be installed as an SPKG
slabbe-none:                                 optional pip package; use "./sage -i slabbe" to install
snappy-none:                                 optional pip package; use "./sage -i snappy" to install
snowballstemmer-2.1.0:                       standard, will be installed as an SPKG
speaklater-1.3.p0:                           optional, use "./configure --enable-speaklater" to install
sphinx-4.2.0:                                standard, will be installed as an SPKG
sphinxcontrib_applehelp-1.0.2:               standard, will be installed as an SPKG
sphinxcontrib_devhelp-1.0.2:                 standard, will be installed as an SPKG
sphinxcontrib_htmlhelp-2.0.0:                standard, will be installed as an SPKG
sphinxcontrib_jsmath-1.0.1:                  standard, will be installed as an SPKG
sphinxcontrib_qthelp-1.0.3:                  standard, will be installed as an SPKG
sphinxcontrib_serializinghtml-1.1.5:         standard, will be installed as an SPKG
sphinxcontrib_websupport-1.2.1:              standard, will be installed as an SPKG
sqlalchemy-none:                             optional pip package; use "./sage -i sqlalchemy" to install
sqlite-3.36.0:                               not required on your platform; SPKG will not be installed
suitesparse-5.10.1:                          using system package; SPKG will not be installed
surf-1.0.6-gcc6:                             experimental, use "./configure --enable-surf" to install
surface_dynamics-none:                       optional pip package; use "./sage -i surface_dynamics" to install
symengine-0.8.1:                             optional, use "./configure --enable-symengine" to install
symengine_py-0.8.1.p0:                       optional, use "./configure --enable-symengine_py" to install
symmetrica-3.0.1:                            using system package; SPKG will not be installed
sympow-2.023.6:                              using system package; SPKG will not be installed
sympy-1.9:                                   standard, will be installed as an SPKG
tachyon-0.98.9.p7:                           using system package; SPKG will not be installed
tdlib-0.3.1.p0:                              optional, use "./configure --enable-tdlib" to install
terminado-0.12.1:                            standard, but disabled using configure option
testpath-0.5.0:                              standard, will be installed as an SPKG
texlive-none:                                optional, use "./configure --enable-texlive" to install
texttable-1.6.3:                             optional, use "./configure --enable-texttable" to install
thebe-9624e0a0.p0:                           standard, will be installed as an SPKG
threejs-r122.p0:                             standard, will be installed as an SPKG
tides-2.0.p0:                                optional, use "./configure --enable-tides" to install
toml-0.10.2:                                 not required on your platform; SPKG will not be installed
tomli-1.2.1:                                 standard, will be installed as an SPKG
topcom-0.17.7:                               optional, use "./configure --enable-topcom" to install
tornado-6.1:                                 standard, will be installed as an SPKG
tox-3.24.3:                                  using system package; SPKG will not be installed
traitlets-5.1.1:                             standard, will be installed as an SPKG
typing_extensions-3.10.0.0:                  standard, will be installed as an SPKG
tzlocal-2.1:                                 standard, will be installed as an SPKG
urllib3-1.26.6:                              standard, will be installed as an SPKG
valgrind-3.14.0:                             experimental, use "./configure --enable-valgrind" to install
vcversioner-2.16.0.0.p0:                     standard, will be installed as an SPKG
virtualenv-20.7.2:                           not required on your platform; SPKG will not be installed
wcwidth-0.2.5:                               standard, will be installed as an SPKG
webencodings-0.5.1:                          standard, will be installed as an SPKG
wheel-0.37.0:                                standard, will be installed as an SPKG
widgetsnbextension-3.5.2:                    standard, will be installed as an SPKG
xz-5.2.5:                                    not required on your platform; SPKG will not be installed
zeromq-4.3.4:                                using system package; SPKG will not be installed
zipp-3.5.0:                                  standard, will be installed as an SPKG
zlib-1.2.11.p0:                              using system package; SPKG will not be installed
zn_poly-0.9.2:                               already installed as an SPKG

@orlitzky
Copy link
Contributor

comment:18

It turns out that the python on Gentoo is already patched to avoid this very issue. Ugh.

@orlitzky
Copy link
Contributor

comment:19

Rebuilt with the python3 SPKG, and now my sysconfig changes are visible. But somehow I'm able to compile the file that was causing the OP's problem, e.g.:

mjo 19305 100 8.8 620380 492880 pts/0 R+ 01:23 0:13 /usr/libexec/gcc/x86_64-pc-linux-gnu/11.2.0/cc1plus -quiet -I /usr/include/openblas -I ./sage/cpython -I ./sage/rings/finite_rings -I ./sage/ext -I ./sage/libs/flint -I /home/mjo/src/sage.git/local/var/lib/sage/venv-python3.9.9/lib/python3.9/site-packages/cysignals -I /home/mjo/src/sage.git/pkgs/sagemath-standard -I /home/mjo/src/sage.git/local/var/lib/sage/venv-python3.9.9/include/python3.9 -I /home/mjo/src/sage.git/local/var/lib/sage/venv-python3.9.9/lib/python3.9/site-packages/numpy/core/include -I build/cythonized -I /home/mjo/src/sage.git/local/var/lib/sage/venv-python3.9.9/include/python3.9 -D_GNU_SOURCE -D_REENTRANT -D NDEBUG -D CYTHON_CLINE_IN_TRACEBACK=1 -D _XPG6 -D NDEBUG -U _LB_DEBUG -D DISABLE_COMMENTATOR -D FFLAS_COMPILED -D FFPACK_COMPILED build/cythonized/sage/matrix/matrix_modn_dense_double.cpp -quiet -dumpdir build/temp.linux-x86_64-3.9/build/cythonized/sage/matrix/ -dumpbase matrix_modn_dense_double.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -g -g -O3 -O0 -O0 -O2 -Werror=return-type -Wno-unused-result -Wsign-compare -Wno-unused -Wreturn-type -Wall -std=gnu++11 -fwrapv -fPIC -fno-strict-aliasing -fopenmp -o -

matrix_modn_dense_double.cpp includes fflas-ffpack.h, which includes fflas/fflas.h, which includes fflas_level3.inl, which includes the pfgemm function without a return value.

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 14, 2022

comment:20

I would think it is sufficient to reproduce the error on the reported platform and confirm that the patch fixes it. Little point on trying to reproduce on a different platform.

@orlitzky
Copy link
Contributor

Changed commit from 3fdfae9 to fa2e672

@orlitzky
Copy link
Contributor

comment:22

I finally got it to fail using the fflas_ffpack SPKG. Maybe it has something to do with the autotune, who knows. Anyway, the patch works. I added some comments at the top of the file. Feel free to positive review after checking it.

@orlitzky
Copy link
Contributor

Reviewer: Michael Orlitzky

@orlitzky
Copy link
Contributor

@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 14, 2022

comment:23

Thanks.

@vbraun
Copy link
Member

vbraun commented Jan 15, 2022

Changed branch from u/mjo/ticket/33153 to fa2e672

@mkoeppe
Copy link
Member Author

mkoeppe commented Mar 8, 2022

comment:25

opensuse has marked https://bugzilla.suse.com/show_bug.cgi?id=1194605 wontfix.

@mkoeppe
Copy link
Member Author

mkoeppe commented Mar 8, 2022

Changed commit from fa2e672 to none

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants