Opened 17 months ago

Closed 15 months ago

Last modified 15 months ago

#31624 closed defect (fixed)

fedora-34-standard: eclib, singular, ipykernel build failures with system ntl, zeromq

Reported by: mkoeppe Owned by:
Priority: blocker Milestone: sage-9.3
Component: porting Keywords:
Cc: dimpase, gh-jamesjer, fbissey, enriqueartal, mjo, malb Merged in:
Authors: Matthias Koeppe Reviewers: Volker Braun
Report Upstream: N/A Work issues:
Branch: 3197044 (Commits, GitHub, GitLab) Commit:
Dependencies: Stopgaps:

Status badges

Description (last modified by mkoeppe)

from https://groups.google.com/g/sage-release/c/6WjKQt_e_B8/m/dpx1qILOCwAJ (for 9.3.rc2):

9.3.beta8> fedora-34-standard: 9.3.beta8> [eclib-20190909] /usr/bin/ld: /usr/lib64/libntl.so: undefined reference to `std::exception_ptr::exception_ptr::_M_release()@CXXABI_1.3.13'

fedora-34-standard eclib problem is unchanged in 9.3.rc2, and also issues with ntl show up in singular

See also: https://groups.google.com/g/sage-release/c/PAeKAGNJIJA/m/Rrncqdp7AQAJ

Change History (31)

comment:1 Changed 16 months ago by mkoeppe

  • Milestone changed from sage-9.3 to sage-9.4

comment:2 Changed 16 months ago by mkoeppe

  • Cc fbissey enriqueartal added
  • Dependencies set to #29703
  • Description modified (diff)

comment:3 Changed 16 months ago by mkoeppe

As noted in #29703, upgrading our gcc spkg to 10.3 does not fix this issue.

So we should probably improve our ntl/spkg-configure.m4 to make sure that it is usable. (Related: #31578, which will also modify ntl/spkg-configure.m4

comment:4 Changed 16 months ago by mkoeppe

  • Cc mjo added
  • Milestone changed from sage-9.4 to sage-9.3
  • Priority changed from major to critical

comment:5 Changed 16 months ago by mkoeppe

  • Priority changed from critical to blocker

As I wrote in https://groups.google.com/g/sage-release/c/PAeKAGNJIJA/m/guT9UeiYAgAJ, we could just have ntl's spkg-configure.m4 reject system NTL if we reject system gcc. I'm preparing a patch for this

comment:6 Changed 16 months ago by mkoeppe

  • Branch set to u/mkoeppe/fedora_34_standard__eclib__singular_build_failures_with_system_ntl

comment:7 Changed 16 months ago by mkoeppe

  • Authors set to Matthias Koeppe
  • Commit set to 887e9918d25e1adb7fa3b52514c491de152dcb78
  • Status changed from new to needs_review

New commits:

887e991build/pkgs/ntl/spkg-configure.m4: Add depcheck for gcc

comment:8 Changed 16 months ago by mkoeppe

Also:

  [ipykernel-5.2.1] error installing, exit status 1. End of log file:
  [ipykernel-5.2.1]       File "/sage/local/lib64/python3.9/site-packages/zmq/backend/cython/__init__.py", line 6, in <module>
  [ipykernel-5.2.1]         from . import (constants, error, message, context,
  [ipykernel-5.2.1]     ImportError: /sage/local/lib/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /lib64/libzmq.so.5)
  [ipykernel-5.2.1]     Building wheel for ipykernel (PEP 517): finished with status 'error'
  [ipykernel-5.2.1]     ERROR: Failed building wheel for ipykernel
  [ipykernel-5.2.1]   Failed to build ipykernel

comment:9 Changed 16 months ago by mkoeppe

  • Summary changed from fedora-34-standard: eclib, singular build failures with system ntl to fedora-34-standard: eclib, singular, ipykernel build failures with system ntl, zeromq

comment:10 Changed 16 months ago by git

  • Commit changed from 887e9918d25e1adb7fa3b52514c491de152dcb78 to 5594edd417e6a4bb7b1b21fb04b94512ddfe6be5

Branch pushed to git repo; I updated commit sha1. New commits:

5594eddbuild/pkgs/zeromq/spkg-configure.m4: Add depcheck for gcc

comment:11 follow-up: Changed 16 months ago by 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:12 Changed 16 months ago by git

  • Commit changed from 5594edd417e6a4bb7b1b21fb04b94512ddfe6be5 to df4274ec4cd767a02df0f5819b20f3f6331382bb

Branch pushed to git repo; I updated commit sha1. New commits:

df4274ebuild/pkgs/{freetype,libgd}/spkg-configure.m4: Add depcheck for gcc

comment:13 in reply to: ↑ 11 Changed 16 months ago by enriqueartal

I found this error while building, I think that --with-system-libgd=no --with-system-brial=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 16 months ago by mkoeppe

I already did the libgd above and just ran into the brial issue too.

comment:15 Changed 16 months ago by git

  • Commit changed from df4274ec4cd767a02df0f5819b20f3f6331382bb to 04ca24245faf39d51bfd468aeb18cf73f70107f2

Branch pushed to git repo; I updated commit sha1. New commits:

04ca242build/pkgs/brial/spkg-configure.m4: Add depcheck on gcc

comment:16 Changed 16 months ago by git

  • Commit changed from 04ca24245faf39d51bfd468aeb18cf73f70107f2 to 2012f7c31b3871769a0c49c277bcb579e29478cd

Branch pushed to git repo; I updated commit sha1. New commits:

2012f7cbuild/pkgs/ppl/spkg-configure.m4: Add depcheck on gcc

comment:17 Changed 16 months ago by git

  • Commit changed from 2012f7c31b3871769a0c49c277bcb579e29478cd to cedbb31e02f260cb702c9ecfbeabe1659090408e

Branch pushed to git repo; I updated commit sha1. New commits:

cedbb31build/pkgs/fplll/spkg-configure.m4: Add depcheck on gcc

comment:18 Changed 16 months ago by mkoeppe

With this I am running into an fplll build error:

[fplll-5.4.0] libtool: link: g++ -std=c++11 -O2 -g -fPIC -I/sage/local/include/ -Wl,-rpath-link -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
[fplll-5.4.0] libtool: link: g++ -std=c++11 -O2 -g -fPIC -I/sage/local/include/ -Wl,-rpath-link -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
[fplll-5.4.0] /usr/bin/ld: /usr/lib64/libqd.so.0: undefined reference to `std::__istream_extract(std::istream&, char*, long)@GLIBCXX_3.4.29'
[fplll-5.4.0] collect2: error: ld returned 1 exit status
[fplll-5.4.0] make[6]: *** [Makefile:1119: latticegen] Error 1
[fplll-5.4.0] make[6]: *** Waiting for unfinished jobs....
[fplll-5.4.0] /usr/bin/ld: /usr/lib64/libqd.so.0: undefined reference to `std::__istream_extract(std::istream&, char*, long)@GLIBCXX_3.4.29'
[fplll-5.4.0] collect2: error: ld returned 1 exit status

comment:19 Changed 16 months ago by mkoeppe

  • Cc malb added

comment:20 Changed 16 months ago by mkoeppe

We do not have an spkg for qd -- so we cannot fix this problem with spkg-configure. Opened #31792 for adding a package for it

comment:21 Changed 16 months ago by git

  • Commit changed from cedbb31e02f260cb702c9ecfbeabe1659090408e to 31970444601c16300153cddbac6e0a1658883368

Branch pushed to git repo; I updated commit sha1. New commits:

3197044build/pkgs/fplll/spkg-install.in: Configure --without-qd if we use gcc from spkg

comment:22 Changed 16 months ago by mkoeppe

This version works for me. Let's get it into Sage 9.3 please

comment:23 Changed 16 months ago by dimpase

as #29703 is a dependency with 9.4 milestone, it does not seem to make sense to insist on 9.3 milestone here.

comment:24 Changed 16 months ago by mkoeppe

  • Dependencies #29703 deleted

I forgot to remove the dependency.

comment:25 Changed 16 months ago by vbraun

  • Reviewers set to Volker Braun
  • Status changed from needs_review to positive_review

comment:26 Changed 15 months ago by mkoeppe

Thanks!

comment:27 Changed 15 months ago by vbraun

  • Branch changed from u/mkoeppe/fedora_34_standard__eclib__singular_build_failures_with_system_ntl to 31970444601c16300153cddbac6e0a1658883368
  • Resolution set to fixed
  • Status changed from positive_review to closed

comment:28 follow-up: Changed 15 months ago by enriqueartal

  • Commit 31970444601c16300153cddbac6e0a1658883368 deleted

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 --with-system-zeromq=no --with-system-eclib=no --with-system-flint=no --with-system-flintqs=no --with-system-ntl=no --with-system-libgd=no --with-system-brial=no was ok

comment:29 in reply to: ↑ 28 ; follow-up: Changed 15 months ago by 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?

comment:30 in reply to: ↑ 29 Changed 15 months ago by enriqueartal

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 --with-system-libgd=yes it tries to compile libgd-2.3.2

comment:31 Changed 15 months ago by mkoeppe

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)

Note: See TracTickets for help on using tickets.