#31624 closed defect (fixed)
fedora34standard: eclib, singular, ipykernel build failures with system ntl, zeromq
Reported by:  Matthias Köppe  Owned by:  

Priority:  blocker  Milestone:  sage9.3 
Component:  porting  Keywords:  
Cc:  Dima Pasechnik, Jerry James, François Bissey, Enrique Artal Bartolo, Michael Orlitzky, Martin Albrecht  Merged in:  
Authors:  Matthias Koeppe  Reviewers:  Volker Braun 
Report Upstream:  N/A  Work issues:  
Branch:  3197044 (Commits, GitHub, GitLab)  Commit:  
Dependencies:  Stopgaps: 
Description (last modified by )
from https://groups.google.com/g/sagerelease/c/6WjKQt_e_B8/m/dpx1qILOCwAJ (for 9.3.rc2):
9.3.beta8> fedora34standard: 9.3.beta8> [eclib20190909] /usr/bin/ld: /usr/lib64/libntl.so: undefined reference to `std::exception_ptr::exception_ptr::_M_release()@CXXABI_1.3.13'
fedora34standard eclib problem is unchanged in 9.3.rc2, and also issues with ntl show up in singular
See also: https://groups.google.com/g/sagerelease/c/PAeKAGNJIJA/m/Rrncqdp7AQAJ
Change History (31)
comment:1 Changed 18 months ago by
Milestone:  sage9.3 → sage9.4 

comment:2 Changed 17 months ago by
Cc:  François Bissey Enrique Artal Bartolo added 

Dependencies:  → #29703 
Description:  modified (diff) 
comment:3 Changed 17 months ago by
comment:4 Changed 17 months ago by
Cc:  Michael Orlitzky added 

Milestone:  sage9.4 → sage9.3 
Priority:  major → critical 
comment:5 Changed 17 months ago by
Priority:  critical → blocker 

As I wrote in https://groups.google.com/g/sagerelease/c/PAeKAGNJIJA/m/guT9UeiYAgAJ, we could just have ntl's spkgconfigure.m4
reject system NTL if we reject system gcc.
I'm preparing a patch for this
comment:6 Changed 17 months ago by
Branch:  → u/mkoeppe/fedora_34_standard__eclib__singular_build_failures_with_system_ntl 

comment:7 Changed 17 months ago by
Authors:  → Matthias Koeppe 

Commit:  → 887e9918d25e1adb7fa3b52514c491de152dcb78 
Status:  new → needs_review 
New commits:
887e991  build/pkgs/ntl/spkgconfigure.m4: Add depcheck for gcc

comment:8 Changed 17 months ago by
Also:
[ipykernel5.2.1] error installing, exit status 1. End of log file: [ipykernel5.2.1] File "/sage/local/lib64/python3.9/sitepackages/zmq/backend/cython/__init__.py", line 6, in <module> [ipykernel5.2.1] from . import (constants, error, message, context, [ipykernel5.2.1] ImportError: /sage/local/lib/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /lib64/libzmq.so.5) [ipykernel5.2.1] Building wheel for ipykernel (PEP 517): finished with status 'error' [ipykernel5.2.1] ERROR: Failed building wheel for ipykernel [ipykernel5.2.1] Failed to build ipykernel
comment:9 Changed 17 months ago by
Summary:  fedora34standard: eclib, singular build failures with system ntl → fedora34standard: eclib, singular, ipykernel build failures with system ntl, zeromq 

comment:10 Changed 17 months ago by
Commit:  887e9918d25e1adb7fa3b52514c491de152dcb78 → 5594edd417e6a4bb7b1b21fb04b94512ddfe6be5 

Branch pushed to git repo; I updated commit sha1. New commits:
5594edd  build/pkgs/zeromq/spkgconfigure.m4: Add depcheck for gcc

comment:11 followup: 13 Changed 17 months ago by
With these changes, make build
succeeds.
But building the documentation reveals another error:
[dochtml] File "sage/matrix/matrix_modn_sparse.pyx", line 1, in init sage.matrix.matrix_modn_sparse (build/cythonized/sage/matrix/matrix_modn_sparse.cpp:17097) [dochtml] File "sage/matrix/matrix_integer_sparse.pyx", line 1, in init sage.matrix.matrix_integer_sparse (build/cythonized/sage/matrix/matrix_integer_sparse.cpp:17107) [dochtml] File "sage/matrix/matrix_integer_dense.pyx", line 1, in init sage.matrix.matrix_integer_dense (build/cythonized/sage/matrix/matrix_integer_dense.cpp:57743) [dochtml] ImportError: /sage/local/lib/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /lib64/libvmaf.so.0)
comment:12 Changed 17 months ago by
Commit:  5594edd417e6a4bb7b1b21fb04b94512ddfe6be5 → df4274ec4cd767a02df0f5819b20f3f6331382bb 

Branch pushed to git repo; I updated commit sha1. New commits:
df4274e  build/pkgs/{freetype,libgd}/spkgconfigure.m4: Add depcheck for gcc

comment:13 Changed 17 months ago by
I found this error while building, I think that withsystemlibgd=no withsystembrial=no
(at least one of them) in ./configure
did work.
Replying to mkoeppe:
With these changes,
make build
succeeds. But building the documentation reveals another error:[dochtml] File "sage/matrix/matrix_modn_sparse.pyx", line 1, in init sage.matrix.matrix_modn_sparse (build/cythonized/sage/matrix/matrix_modn_sparse.cpp:17097) [dochtml] File "sage/matrix/matrix_integer_sparse.pyx", line 1, in init sage.matrix.matrix_integer_sparse (build/cythonized/sage/matrix/matrix_integer_sparse.cpp:17107) [dochtml] File "sage/matrix/matrix_integer_dense.pyx", line 1, in init sage.matrix.matrix_integer_dense (build/cythonized/sage/matrix/matrix_integer_dense.cpp:57743) [dochtml] ImportError: /sage/local/lib/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /lib64/libvmaf.so.0)
comment:14 Changed 17 months ago by
I already did the libgd
above and just ran into the brial
issue too.
comment:15 Changed 17 months ago by
Commit:  df4274ec4cd767a02df0f5819b20f3f6331382bb → 04ca24245faf39d51bfd468aeb18cf73f70107f2 

Branch pushed to git repo; I updated commit sha1. New commits:
04ca242  build/pkgs/brial/spkgconfigure.m4: Add depcheck on gcc

comment:16 Changed 17 months ago by
Commit:  04ca24245faf39d51bfd468aeb18cf73f70107f2 → 2012f7c31b3871769a0c49c277bcb579e29478cd 

Branch pushed to git repo; I updated commit sha1. New commits:
2012f7c  build/pkgs/ppl/spkgconfigure.m4: Add depcheck on gcc

comment:17 Changed 17 months ago by
Commit:  2012f7c31b3871769a0c49c277bcb579e29478cd → cedbb31e02f260cb702c9ecfbeabe1659090408e 

Branch pushed to git repo; I updated commit sha1. New commits:
cedbb31  build/pkgs/fplll/spkgconfigure.m4: Add depcheck on gcc

comment:18 Changed 17 months ago by
With this I am running into an fplll build error:
[fplll5.4.0] libtool: link: g++ std=c++11 O2 g fPIC I/sage/local/include/ Wl,rpathlink Wl,/sage/local/lib Wl,rpath Wl,/sage/local/lib o .libs/fplll main.o L/sage/local/lib ./.libs/libfplll.so lmpfr lgmp pthread Wl,rpath Wl,/sage/local/lib [fplll5.4.0] libtool: link: g++ std=c++11 O2 g fPIC I/sage/local/include/ Wl,rpathlink Wl,/sage/local/lib Wl,rpath Wl,/sage/local/lib o .libs/latticegen latticegen.o L/sage/local/lib ./.libs/libfplll.so lmpfr lgmp pthread Wl,rpath Wl,/sage/local/lib [fplll5.4.0] /usr/bin/ld: /usr/lib64/libqd.so.0: undefined reference to `std::__istream_extract(std::istream&, char*, long)@GLIBCXX_3.4.29' [fplll5.4.0] collect2: error: ld returned 1 exit status [fplll5.4.0] make[6]: *** [Makefile:1119: latticegen] Error 1 [fplll5.4.0] make[6]: *** Waiting for unfinished jobs.... [fplll5.4.0] /usr/bin/ld: /usr/lib64/libqd.so.0: undefined reference to `std::__istream_extract(std::istream&, char*, long)@GLIBCXX_3.4.29' [fplll5.4.0] collect2: error: ld returned 1 exit status
comment:19 Changed 17 months ago by
Cc:  Martin Albrecht added 

comment:20 Changed 17 months ago by
We do not have an spkg for qd  so we cannot fix this problem with spkgconfigure. Opened #31792 for adding a package for it
comment:21 Changed 17 months ago by
Commit:  cedbb31e02f260cb702c9ecfbeabe1659090408e → 31970444601c16300153cddbac6e0a1658883368 

Branch pushed to git repo; I updated commit sha1. New commits:
3197044  build/pkgs/fplll/spkginstall.in: Configure withoutqd if we use gcc from spkg

comment:23 Changed 17 months ago by
as #29703 is a dependency with 9.4 milestone, it does not seem to make sense to insist on 9.3 milestone here.
comment:25 Changed 17 months ago by
Reviewers:  → Volker Braun 

Status:  needs_review → positive_review 
comment:27 Changed 17 months ago by
Branch:  u/mkoeppe/fedora_34_standard__eclib__singular_build_failures_with_system_ntl → 31970444601c16300153cddbac6e0a1658883368 

Resolution:  → fixed 
Status:  positive_review → closed 
comment:28 followup: 29 Changed 16 months ago by
Commit:  31970444601c16300153cddbac6e0a1658883368 

I am not sure if it is related to this ticket, but I get a persistent error compiling libgd in 9.4.beta0 in Fedora 34:
/usr/bin/ld: /usr/lib64/libvmaf.so.0: undefined reference to `std::throw_bad_array_new_length()@GLIBCXX_3.4.29'
For 9.3 ./configure withsystemzeromq=no withsystemeclib=no withsystemflint=no withsystemflintqs=no withsystemntl=no withsystemlibgd=no withsystembrial=no was ok
comment:29 followup: 30 Changed 16 months ago by
Replying to enriqueartal:
I am not sure if it is related to this ticket, but I get a persistent error compiling libgd in 9.4.beta0 in Fedora 34:
can't you just use the system libgd?
comment:30 Changed 16 months ago by
Replying to dimpase:
Replying to enriqueartal:
I am not sure if it is related to this ticket, but I get a persistent error compiling libgd in 9.4.beta0 in Fedora 34:
can't you just use the system libgd?
Even after ./configure withsystemlibgd=yes it tries to compile libgd2.3.2
comment:31 Changed 16 months ago by
libgd
is rejected because of g++11. Unfortunately building libgd
ourselves appears to create similar issues with other libraries that are (optional) dependencies (not shipped with Sage). The best way to fix this is to fix the remaining issues that block our use of system gcc 11 (#31786). We could also try to fix up our libgd
install scripts (see #27901)
As noted in #29703, upgrading our gcc spkg to 10.3 does not fix this issue.
So we should probably improve our
ntl/spkgconfigure.m4
to make sure that it is usable. (Related: #31578, which will also modifyntl/spkgconfigure.m4