Opened 6 months ago
Closed 2 months ago
#33316 closed enhancement (fixed)
Drop support for GCC < 6.3 in Sage 9.7
Reported by:  mkoeppe  Owned by:  

Priority:  major  Milestone:  sage9.7 
Component:  build: configure  Keywords:  
Cc:  dimpase, ghkliem  Merged in:  
Authors:  Matthias Koeppe  Reviewers:  Jonathan Kliem 
Report Upstream:  N/A  Work issues:  
Branch:  7c0072e (Commits, GitHub, GitLab)  Commit:  7c0072ee09ae13eb519c42fbe1728bcee7ae6cd7 
Dependencies:  Stopgaps: 
Description
(see Metaticket #32074: Remove support for outdated distros)
This ticket can be used as a dependency for upgrade tickets that impose stricter compiler requirements.
Change History (36)
comment:1 Changed 6 months ago by
 Dependencies set to #33187
comment:2 Changed 6 months ago by
 Branch set to u/mkoeppe/drop_support_for_gcc___6_3_in_sage_9_7
comment:3 Changed 6 months ago by
 Commit set to bf96a8acb434f4fbd7ac5b007bea832e58f7f66f
comment:4 Changed 6 months ago by
comment:5 Changed 6 months ago by
 Work issues set to Update platforms tested on GH Actions, best on top of #33062
comment:6 Changed 4 months ago by
 Commit changed from bf96a8acb434f4fbd7ac5b007bea832e58f7f66f to 4e8b2c2771c933f7e2fac7c16fb99cc4e240238f
comment:7 Changed 4 months ago by
 Commit changed from 4e8b2c2771c933f7e2fac7c16fb99cc4e240238f to 9b388ea6e2ab3f2690e61753182acecceef33464
Branch pushed to git repo; I updated commit sha1. New commits:
9b388ea  .github/workflows/tox*.yml: Update platforms for drop of GCC < 6.3

comment:8 Changed 4 months ago by
 Work issues Update platforms tested on GH Actions, best on top of #33062 deleted
comment:9 Changed 4 months ago by
 Dependencies #33187 deleted
comment:10 Changed 4 months ago by
 Commit changed from 9b388ea6e2ab3f2690e61753182acecceef33464 to e7ff2a83a3718923588f56a06c073721b2d18d8b
Branch pushed to git repo; I updated commit sha1. New commits:
e7ff2a8  build/pkgs/gcc/spkgconfigure.m4: Fixup

comment:11 Changed 4 months ago by
 Commit changed from e7ff2a83a3718923588f56a06c073721b2d18d8b to 0713f534c47ec586e485bd2e688fdf7fe4a80f53
Branch pushed to git repo; I updated commit sha1. New commits:
0713f53  .github/workflows/tox*.yml: Replace ubuntuxenial by ubuntuxenialtoolchaingcc_9

comment:12 Changed 4 months ago by
 Reviewers set to https://github.com/mkoeppe/sage/actions/runs/2242737566, https://github.com/mkoeppe/sage/actions/runs/2242737575
 Status changed from new to needs_review
comment:13 Changed 4 months ago by
 Cc ghkliem added
On ubuntutrustytoolchaingcc_9minimal
(https://github.com/mkoeppe/sage/runs/6221011844) and standard
, nauty
, ecm
, ntl
fail with
Error: operand size mismatch for
vmovdqa64' or
Error: operand size mismatch for vmovdqu64'
; and fflas_ffpack
fails with many different operand size mismatch
errors.
comment:14 Changed 4 months ago by
I'm guessing the problem is in https://github.com/linboxteam/fflasffpack/blob/b51626baf2715c8b8bcb0c334856b204f9a4a901/fflasffpack/fflas/fflas_simd/simd512_double.inl
They are calling _mm512_and_pd
with const __mm512d
instead of just __m512d
. The problem should mostly go away, because stuff is inlined, but it might fail with g++ 9.
It seems to work with g++ 11.3.0 for me. At least I cannot reproduce the bug, even though I have available the avx512...
instructions. But then again, it works for the other workflows, so this doesn't seem to be a problem in other cases. Just in the toolchaingcc_9minimal
workflow.
Can we configure fflas_ffpack
with disableavx512dq
in this case?
comment:15 followup: ↓ 18 Changed 4 months ago by
I'll try first if installing binutils2.26
(and setting PATH="/usr/lib/binutils2.26/bin:$PATH"
) helps.
comment:16 Changed 4 months ago by
 Commit changed from 0713f534c47ec586e485bd2e688fdf7fe4a80f53 to dae2d08286e06f7a5a4c7e5e8931670ecfbda64a
comment:17 Changed 4 months ago by
 Reviewers changed from https://github.com/mkoeppe/sage/actions/runs/2242737566, https://github.com/mkoeppe/sage/actions/runs/2242737575 to https://github.com/mkoeppe/sage/actions/runs/2260846479
comment:18 in reply to: ↑ 15 Changed 4 months ago by
Replying to mkoeppe:
I'll try first if installing
binutils2.26
(and settingPATH="/usr/lib/binutils2.26/bin:$PATH"
) helps.
It seems to work. Ready for review
comment:19 Changed 4 months ago by
 Commit changed from dae2d08286e06f7a5a4c7e5e8931670ecfbda64a to 33ca13187c3f29b009e5e93f01d0e42fde64a713
Branch pushed to git repo; I updated commit sha1. New commits:
33ca131  tox.ini, .github/workflows/tox*.yml: Add ubuntukinetic, linuxmint21, fedora37

comment:20 Changed 3 months ago by
 Reviewers changed from https://github.com/mkoeppe/sage/actions/runs/2260846479 to Jonathan Kliem
 Status changed from needs_review to positive_review
LGTM.
comment:21 Changed 3 months ago by
Thank you!
comment:22 followup: ↓ 23 Changed 3 months ago by
 Status changed from positive_review to needs_work
If configure doesn't find a supported version we should just install it instead of giving users instructions for other configure flags:
configure: error: Given withsystemgcc=force, but no system package could be used. That's an error. Please install the indicated package to continue. (To override this error, use ./configure withoutsystemgcc)
comment:23 in reply to: ↑ 22 Changed 3 months ago by
 Status changed from needs_work to positive_review
Replying to vbraun:
If configure doesn't find a supported version we should just install it instead of giving users instructions for other configure flags:
configure: error: Given withsystemgcc=force, but no system package could be used. That's an error. Please install the indicated package to continue. (To override this error, use ./configure withoutsystemgcc)
Volker, it is not a bug, it is how =force
option is meant to be.
comment:24 Changed 3 months ago by
For reference, this behavior was implemented in #32060.
comment:25 Changed 3 months ago by
 Status changed from positive_review to needs_work
Breaks the Debian 9 buildbot, we can merge this after I get around to update the buildbot config
comment:26 followup: ↓ 28 Changed 3 months ago by
 Status changed from needs_work to positive_review
See #32074  we're dropping support for Debian 9.
comment:27 followup: ↓ 30 Changed 3 months ago by
Debian 9 is still LTS
comment:28 in reply to: ↑ 26 Changed 3 months ago by
comment:29 Changed 3 months ago by
 Status changed from positive_review to needs_work
so needs_work but not on the ticket
comment:30 in reply to: ↑ 27 Changed 3 months ago by
Replying to vbraun:
Debian 9 is still LTS
nut only till 01.07.2022, so we should be dropping it in 9.7, I guess.
comment:31 Changed 3 months ago by
 Dependencies set to #33888
 Status changed from needs_work to positive_review
comment:32 Changed 2 months ago by
 Dependencies #33888 deleted
comment:33 Changed 2 months ago by
 Status changed from positive_review to needs_work
Merge failure on top of:
08609a40ad Trac #33829: sage.graphs: Do not use SAGE_TMP in doctests
eca52b24ab Trac #33922: Add missing title to conf.py
e9bfcd2dd8 Trac #33980: codespell in graphs: fix a few typos
28f70e0932 Trac #31153: Fix latex of elements of multivariate polynomial quotient ring
b36c11c5d7 Trac #33983: sage_setup: Add missing dependency
6edac51d8b Trac #33970: Remove a period sneaked in the documentation website
6d60bf357f Trac #33977: fix pycodestyle E306 in geometry and schemes
edd7a74ed3 Trac #33976: some pycodestyle fixes in pxd and pxi files
b0973afaa7 Trac #33975: get rid of commented oldstyle prints
b3d6a0b8ff Trac #33956: some better .join with iterator inside
a33f2df893 Trac #33949: get rid of have_ring option in singular interface
ad1c3ac34f Trac #33946: fix pycodestyle E306 in rings and algebras
4942ca958b Trac #33945: fix pycodestyle E306 outside of algebras,rings,graphs,schemes,categories
8dad9ce80f Trac #30683: Nu Tamari
346b3b04a5 Trac #33968: Replace $...$ in docstrings by ...
f793558dd1 Trac #33967: sage t: Print git commit hash and SAGE_LOCAL, SAGE_VENV
0e48fececd Trac #33963: wrong sign for symbolic Legendre polynomial at 0
34d562ee2b Trac #33962: wrong sign for value of Legendre polynomial at 0
bd33f87651 Trac #33961: compute square roots modulo powers of two in polynomial time
16af958d67 Trac #33940: enhance maple interface
8d921a4996 Trac #33872: Upgrade memory allocator to 0.1.3
29499f89e2 Trac #33871: Don't run singular in spkgconfigure.m4 when cross compiling
4cc978b96c Trac #33823: sage t optional='sage,!FEATURE'
6b6f0cf0f4 Trac #33776: move method distance_graph to graph.py
65e866a5b1 Trac #23443: More Schubert polynomial shenanigans
a6e696e91d Updated SageMath version to 9.7.beta2
merge was not clean: conflicts in .github/workflows/tox.yml
comment:34 Changed 2 months ago by
 Commit changed from 33ca13187c3f29b009e5e93f01d0e42fde64a713 to 7c0072ee09ae13eb519c42fbe1728bcee7ae6cd7
Branch pushed to git repo; I updated commit sha1. New commits:
7c0072e  Merge tag '9.7.beta2' into t/33316/drop_support_for_gcc___6_3_in_sage_9_7

comment:35 Changed 2 months ago by
 Status changed from needs_work to positive_review
comment:36 Changed 2 months ago by
 Branch changed from u/mkoeppe/drop_support_for_gcc___6_3_in_sage_9_7 to 7c0072ee09ae13eb519c42fbe1728bcee7ae6cd7
 Resolution set to fixed
 Status changed from positive_review to closed
Branch pushed to git repo; I updated commit sha1. New commits:
README.md, src/doc/en/installation/source.rst: Update info on GCC versions