Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at
Bug 1959316 - [FTBFS] prusa-slicer: FTBFS in rawhide
Summary: [FTBFS] prusa-slicer: FTBFS in rawhide
Status: ON_QA
Alias: None
Product: Fedora
Classification: Fedora
Component: prusa-slicer
Version: 34
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Miro Hrončok
QA Contact: Fedora Extras Quality Assurance
Depends On:
Blocks: 1937698
TreeView+ depends on / blocked
Reported: 2021-05-11 09:21 UTC by Jonathan Wakely
Modified: 2021-06-24 16:55 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed:
Type: Bug

Attachments (Terms of Use)
build.log (317.60 KB, text/plain)
2021-05-11 09:21 UTC, Jonathan Wakely
no flags Details

Description Jonathan Wakely 2021-05-11 09:21:47 UTC
Created attachment 1781964 [details]

This is due to the glibc change to MINSIGSTKSZ such that it's no longer a compile-time constant.

In file included from /usr/include/signal.h:315,
                 from /builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/catch2/catch.hpp:7712,
                 from /builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/catch_main.hpp:7,
                 from /builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/libnest2d/libnest2d_tests_main.cpp:1:
/builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/catch2/catch.hpp:10453:58: error: call to non-'constexpr' function 'long int sysconf(int)'
10453 |     static constexpr std::size_t sigStackSize = 32768 >= MINSIGSTKSZ ? 32768 : MINSIGSTKSZ;
      |                                                          ^~~~~~~~~~~
In file included from /usr/include/bits/sigstksz.h:24,
                 from /usr/include/signal.h:315,
                 from /builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/catch2/catch.hpp:7712,
                 from /builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/catch_main.hpp:7,
                 from /builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/libnest2d/libnest2d_tests_main.cpp:1:
/usr/include/unistd.h:630:17: note: 'long int sysconf(int)' declared here
  630 | extern long int sysconf (int __name) __THROW;
      |                 ^~~~~~~
In file included from /builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/catch_main.hpp:7,
                 from /builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/libnest2d/libnest2d_tests_main.cpp:1:
/builddir/build/BUILD/PrusaSlicer-version_2.2.0/tests/catch2/catch.hpp:10512:45: error: size of array 'altStackMem' is not an integral constant-expression
10512 |     char FatalConditionHandler::altStackMem[sigStackSize] = {};
      |                                             ^~~~~~~~~~~~

Upstream should switch to bundling a newer version of Catch2 with this fix:

Comment 1 Jakub Jelinek 2021-05-31 11:32:13 UTC
Gentle ping: this bug is blocking an important gcc update in rawhide/f34.

Comment 2 Miro Hrončok 2021-05-31 11:53:30 UTC
Blocking how?

Comment 3 Jakub Jelinek 2021-05-31 11:56:51 UTC
It references symbols that shouldn't be in libstdc++ and can't be removed from there until the last package that references them is rebuilt.

Comment 4 Miro Hrončok 2021-05-31 12:09:03 UTC
This was already fixed in rawhide, so you can proceed there.

I'll test and if it does not land, backport the rawhide commit to f34 instead.

What time frame do you need for Fedora 34?

Comment 5 Miro Hrončok 2021-05-31 12:35:00 UTC
BTW Are you really considering removing symbols from libstdc++ in an already released Fedora version? That does not really go well with

Comment 6 Jakub Jelinek 2021-05-31 13:17:03 UTC
Those symbols weren't in any official upstream release, only in GCC 11 snapshots from Nov 3rd 2020 to Mar 12th 2021 and then removed again.
So it is not part of upstream GCC 11 and the symbols aren't used in anything that is compiled with gcc newer than Mar 12th.
There has been a partial mass rebuild of the affected packages (small subset of packages using C++), but unfortunately a few packages didn't rebuild during that due to various reasons and those are blocking the symbol removal.

For timeframe, the sooner the better, we wanted to remove those already 2.5 months ago, but we can't do it until all the problematic packages are rebuilt.  See the blocked rhbz for what remains in rawhide,
we'll need to check afterwards what remains in f34.

Comment 7 Fedora Update System 2021-06-23 22:06:01 UTC
FEDORA-2021-9e000ca4c8 has been submitted as an update to Fedora 34.

Comment 8 Fedora Update System 2021-06-24 16:55:27 UTC
FEDORA-2021-9e000ca4c8 has been pushed to the Fedora 34 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-9e000ca4c8`
You can provide feedback for this update here:

See also for more information on how to test updates.

Note You need to log in before you can comment on or make changes to this bug.