Bug 2217962

Summary: prusa-slicer: FTBFS in Fedora Rawhide
Product: [Fedora] Fedora Reporter: Jonathan Wakely <jwakely>
Component: prusa-slicerAssignee: Jan Staněk <jstanek>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 39CC: jstanek, j, laurent.rineau__fedora, mhroncok, spotrh
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
URL: https://koschei.fedoraproject.org/package/prusa-slicer
Whiteboard:
Fixed In Version: prusa-slicer-2.4.2-11.fc40 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-11-07 13:28:30 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2036372, 2168842, 2231791, 2246613    

Description Jonathan Wakely 2023-06-27 16:32:09 UTC
Description of problem:
Package prusa-slicer fails to build from source in Fedora Rawhide.

Version-Release number of selected component (if applicable):
2.4.2-9.fc39

Steps to Reproduce:
koji build --scratch f39 prusa-slicer-2.4.2-9.fc39.src.rpm

Additional info:
This package is tracked by Koschei. See:
https://koschei.fedoraproject.org/package/prusa-slicer

Reproducible: Always




It seems to be due to a change in the boost iterator facade:

/builddir/build/BUILD/PrusaSlicer-version_2.4.2/src/libslic3r/MeshBoolean.cpp: In instantiation of 'Slic3r::TriangleMesh Slic3r::MeshBoolean::cgal::cgal_to_triangle_mesh(const _Mesh&) [with _Mesh = CGAL::Surface_mesh<CGAL::Point_3<CGAL::Epick> >]':
/builddir/build/BUILD/PrusaSlicer-version_2.4.2/src/libslic3r/MeshBoolean.cpp:184:33:   required from here
/builddir/build/BUILD/PrusaSlicer-version_2.4.2/src/libslic3r/MeshBoolean.cpp:150:5: error: cannot bind non-const lvalue reference of type 'CGAL::SM_Vertex_index&' to an rvalue of type 'boost::iterators::detail::iterator_facade_base<CGAL::Surface_mesh<CGAL::Point_3<CGAL::Epick> >::Index_iterator<CGAL::SM_Vertex_index>, CGAL::SM_Vertex_index, std::random_access_iterator_tag, CGAL::SM_Vertex_index, long int, false, false>::reference' {aka 'CGAL::SM_Vertex_index'}
  150 |     for (auto &vi : vertices) {
      |     ^~~
/builddir/build/BUILD/PrusaSlicer-version_2.4.2/src/libslic3r/MeshBoolean.cpp:155:5: error: cannot bind non-const lvalue reference of type 'CGAL::SM_Face_index&' to an rvalue of type 'boost::iterators::detail::iterator_facade_base<CGAL::Surface_mesh<CGAL::Point_3<CGAL::Epick> >::Index_iterator<CGAL::SM_Face_index>, CGAL::SM_Face_index, std::random_access_iterator_tag, CGAL::SM_Face_index, long int, false, false>::reference' {aka 'CGAL::SM_Face_index'}
  155 |     for (auto &face : faces) {
      |     ^~~

Comment 1 Fedora Release Engineering 2023-08-16 08:11:30 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 39 development cycle.
Changing version to 39.

Comment 2 Jan Staněk 2023-11-06 11:59:51 UTC
I'm taking a look at this, and seems to be on a way to fix.

This upstream commit seems to address the issue: https://github.com/prusa3d/PrusaSlicer/commit/4aa7366fafb7a3f91cc68d4a808f5195a4aa3dcf

Comment 3 Fedora Update System 2023-11-07 13:25:07 UTC
FEDORA-2023-0155d6a63c has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2023-0155d6a63c

Comment 4 Fedora Update System 2023-11-07 13:28:30 UTC
FEDORA-2023-0155d6a63c has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.