[3dprinter-general] Bug#1081104: slic3r: FTBFS: /usr/include/c++/14/limits:2100:30: error: exponent has no digits
Zixing Liu
zixing.liu at canonical.com
Wed Nov 20 20:12:38 GMT 2024
Package: slic3r
Version: 1.3.0+dfsg1-5
Followup-For: Bug #1081104
User: ubuntu-devel at lists.ubuntu.com
Usertags: origin-ubuntu plucky ubuntu-patch
Control: tags -1 patch ftbfs
Dear Maintainer,
In Ubuntu, the attached patch was applied to achieve the following:
* d/p/Fix-FTBFS-GCC-14.patch: fix C++ standard library header errors
by removing the -U__STRICT_ANSI__ flag from the build system. GCC 14
no longer supports this non-standard flag and will cause IEEE
extended-precision numbers to be unrecognized by GCC (LP: #2089187).
Thanks for considering the patch.
-- System Information:
Debian Release: trixie/sid
APT prefers oracular-updates
APT policy: (500, 'oracular-updates'), (500, 'oracular-security'), (500, 'oracular')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 6.11.0-9-generic (SMP w/10 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE
Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8), LANGUAGE=en_CA:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
-------------- next part --------------
diff -Nru slic3r-1.3.0+dfsg1/debian/patches/Fix-FTBFS-GCC-14.patch slic3r-1.3.0+dfsg1/debian/patches/Fix-FTBFS-GCC-14.patch
--- slic3r-1.3.0+dfsg1/debian/patches/Fix-FTBFS-GCC-14.patch 1969-12-31 17:00:00.000000000 -0700
+++ slic3r-1.3.0+dfsg1/debian/patches/Fix-FTBFS-GCC-14.patch 2024-10-21 20:19:01.000000000 -0600
@@ -0,0 +1,29 @@
+Description: Do not undefine __STRICT_ANSI__
+Author: Jonathan Wakely <jwakely at fedoraproject.org>
+Origin: backport, https://github.com/slic3r/Slic3r/pull/4974
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1081104
+Bug-Ubuntu: https://bugs.launchpad.net/debian/+source/slic3r/+bug/2089187
+Last-Update: 2024-11-20
+---
+Index: slic3r/xs/Build.PL
+===================================================================
+--- slic3r.orig/xs/Build.PL
++++ slic3r/xs/Build.PL
+@@ -21,13 +21,12 @@ $ENV{LD_RUN_PATH} //= "";
+ # BOOST_ASIO_DISABLE_KQUEUE : prevents a Boost ASIO bug on OS X: https://svn.boost.org/trac/boost/ticket/5339
+ my @cflags = qw(-D_GLIBCXX_USE_C99 -DHAS_BOOL -DNOGDI -DSLIC3RXS -DBOOST_ASIO_DISABLE_KQUEUE -Dexprtk_disable_rtl_io_file -Dexprtk_disable_return_statement -Dexprtk_disable_rtl_vecops -Dexprtk_disable_string_capabilities -Dexprtk_disable_enhanced_features);
+ if ($cpp_guess->is_gcc) {
+- # GCC is pedantic with c++11 std, so undefine strict ansi to get M_PI back
+- push @cflags, qw(-U__STRICT_ANSI__);
++ # GCC is pedantic with c++11 std, so use -std=gnu++11 to be able to use M_PI
++ push @cflags, qw(-std=gnu++11);
++} else {
++ push @cflags, qw(-std=c++11);
+ }
+
+-# std=c++11 Enforce usage of C++11 (required now). Minimum compiler supported: gcc 4.9, clang 3.3, MSVC 14.0
+-push @cflags, qw(-std=c++11);
+-
+ my @ldflags = ();
+
+ if ($linux && (defined $ENV{SLIC3R_STATIC} && $ENV{SLIC3R_STATIC})) {
diff -Nru slic3r-1.3.0+dfsg1/debian/patches/series slic3r-1.3.0+dfsg1/debian/patches/series
--- slic3r-1.3.0+dfsg1/debian/patches/series 2024-10-20 06:34:08.000000000 -0600
+++ slic3r-1.3.0+dfsg1/debian/patches/series 2024-10-21 20:19:01.000000000 -0600
@@ -7,3 +7,4 @@
fix_boost_174.patch
Fix-CVE-2020-28591.patch
Link-against-boost-nowide-library.patch
+Fix-FTBFS-GCC-14.patch
More information about the 3dprinter-general
mailing list