Skip to content
This repository has been archived by the owner on Jan 30, 2023. It is now read-only.

Commit

Permalink
Trac #31624: fedora-34-standard: eclib, singular, ipykernel build fai…
Browse files Browse the repository at this point in the history
…lures with system ntl, zeromq

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

URL: https://trac.sagemath.org/31624
Reported by: mkoeppe
Ticket author(s): Matthias Koeppe
Reviewer(s): Volker Braun
  • Loading branch information
Release Manager committed May 9, 2021
2 parents c27d4d6 + 3197044 commit 3f4547f
Show file tree
Hide file tree
Showing 8 changed files with 19 additions and 35 deletions.
3 changes: 2 additions & 1 deletion build/pkgs/brial/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
SAGE_SPKG_CONFIGURE([brial], [
SAGE_SPKG_DEPCHECK([boost m4ri], [
dnl Trac #31624: Avoid C++ ABI issues
SAGE_SPKG_DEPCHECK([gcc boost m4ri], [
# If we're using the system m4ri and boost, ensure that we can
# compile and run an executable linked against both libbrial and
# libbrial_groebner (both are used by SageMath).
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/fplll/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
SAGE_SPKG_CONFIGURE([fplll], [
SAGE_SPKG_DEPCHECK([mpfr], [
SAGE_SPKG_DEPCHECK([gcc mpfr], [
dnl If we're using the system mpfr, use pkgconfig to determine
dnl if there's a usable system copy of fplll. Unless there's
dnl a system that ships fplll without fplll.pc file, falling
Expand Down
5 changes: 5 additions & 0 deletions build/pkgs/fplll/spkg-install.in
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,11 @@ if [ "x$SAGE_DEBUG" = "xyes" ]; then
CONFIGUREFLAGS="$CONFIGUREFLAGS --enable-debug"
fi

if [ -x "$SAGE_LOCAL"/bin/gcc ]; then
# Trac #31624: Avoid C++ ABI issues
CONFIGUREFLAGS="$CONFIGUREFLAGS --without-qd"
fi

export CXXFLAGS="$CXXFLAGS"
export CPPFLAGS="$CPPFLAGS"
export CXX="$CXX"
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/freetype/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
SAGE_SPKG_CONFIGURE([freetype], [
SAGE_SPKG_DEPCHECK([libpng], [
SAGE_SPKG_DEPCHECK([gcc libpng], [
dnl freetype versions are libtool's ones, cf trac #30014
PKG_CHECK_MODULES([FREETYPE], [freetype2 >= 16.1], [], [sage_spkg_install_freetype=yes])
])
Expand Down
21 changes: 3 additions & 18 deletions build/pkgs/libgd/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,21 +1,6 @@
SAGE_SPKG_CONFIGURE([libgd], [
AC_REQUIRE([SAGE_SPKG_CONFIGURE_LIBPNG])
AC_REQUIRE([SAGE_SPKG_CONFIGURE_FREETYPE])
AC_MSG_CHECKING([Installing freetype? ])
if test x$sage_spkg_install_freetype = xyes; then
AC_MSG_RESULT([Yes. Install libgd as well.])
sage_spkg_install_libgd=yes
else
dnl do not just rely on libpng being a dependency of freetype
AC_MSG_CHECKING([Installing libpng? ])
if test x$sage_spkg_install_libpng = xyes; then
AC_MSG_RESULT([Yes. Install libgd as well.])
sage_spkg_install_libgd=yes
else
AC_MSG_RESULT([No.])
dnl Trac #31624: Avoid C++ ABI issues
SAGE_SPKG_DEPCHECK([gcc libpng freetype], [
PKG_CHECK_MODULES([LIBGD], [gdlib >= 2.1], [], [sage_spkg_install_libgd=yes])
fi
fi
])
])


14 changes: 2 additions & 12 deletions build/pkgs/ntl/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,17 +1,7 @@
SAGE_SPKG_CONFIGURE([ntl], [
AC_REQUIRE([SAGE_SPKG_CONFIGURE_GMP])
AC_MSG_CHECKING([installing gmp/mpir? ])
if test x$sage_spkg_install_mpir = xyes -o x$sage_spkg_install_gmp = xyes; then
AC_MSG_RESULT([yes; install ntl as well])
sage_spkg_install_ntl=yes
else
AC_MSG_RESULT([no])
fi
m4_pushdef(SAGE_NTL_VERSION_MAJOR, [10])
m4_pushdef(SAGE_NTL_VERSION_MINOR, [3])
if test x$sage_spkg_install_ntl != xyes; then
SAGE_SPKG_DEPCHECK([gmp mpir gcc], [
AC_CHECK_HEADER([NTL/ZZ.h], [], [sage_spkg_install_ntl=yes])
AC_MSG_CHECKING([whether we can link a program using NTL])
NTL_SAVED_LIBS=$LIBS
Expand Down Expand Up @@ -40,7 +30,7 @@ SAGE_SPKG_CONFIGURE([ntl], [
AC_MSG_RESULT([no])
sage_spkg_install_ntl=yes
])
fi
])
m4_popdef([SAGE_NTL_VERSION_MAJOR])
m4_popdef([SAGE_NTL_VERSION_MINOR])
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/ppl/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
SAGE_SPKG_CONFIGURE([ppl], [
SAGE_SPKG_DEPCHECK([glpk gmp mpir], [
SAGE_SPKG_DEPCHECK([gcc glpk gmp mpir], [
# If our dependencies come from the system, then we can use the
# system ppl, too. This macro works sort-of like the
# PKG_CHECK_MODULES macro, defining e.g. PPL_CFLAGS when a
Expand Down
5 changes: 4 additions & 1 deletion build/pkgs/zeromq/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
SAGE_SPKG_CONFIGURE([zeromq], [
AX_ZMQ([4.2.5], [], [sage_spkg_install_zeromq=yes])
dnl Trac #31624: Avoid C++ ABI issues
SAGE_SPKG_DEPCHECK([gcc], [
AX_ZMQ([4.2.5], [], [sage_spkg_install_zeromq=yes])
])
])

0 comments on commit 3f4547f

Please sign in to comment.