Building from source fails on Fedora 40
envgap__bambulab__BambuStudio-4018
01 / FAILURE SIGNATURE
As reported upstream
/home/alok/src/BambuStudio/src/clipper2/Clipper2Lib/include/clipper2/clipper.core.h:117:26: error: template-id not allowed for constructor in C++20 [-Werror=template-id-cdtor]
Not a benchmark task.
- In a clean container the reported failure did not reproduce, or the known fix did not make the project run.
02 / ENVIRONMENT RECIPE
- Base commit
8303f0486781375a9feb380b21476960af33ceb8- Manifest
src/clipper2/CMakeLists.txt- Reproduce
Awaiting issue-specific recipe- Run under trace
Awaiting a meaningful runtime command
03 / ORIGINAL ISSUE TEXT
bambulab/BambuStudio #4018 · read the original issue
### Bambu Studio Version
v01.09.01.58
### Where is the application from?
Built from source by yourself or others
### OS version
Fedora 40, Linux 6.8.8-300.fc40.x86_64 #1 SMP PREEMPT_DYNAMIC Sat Apr 27 17:53:31 UTC 2024 x86_64 GNU/Linux
### Additional system information
gcc version 14.0.1 20240411 (Red Hat 14.0.1-0) (GCC)
cmake version 3.28.2
GNU Make 4.4.1 Built for x86_64-redhat-linux-gnu
### Printer
Bambu Lab X1C
### How to reproduce
1. Clone this repository on Fedora 40 with the latest system updates
2. Follow the steps in the [compile guide](https://github.com/bambulab/BambuStudio/wiki/Linux-Compile-Guide)
### Actual results
After executing the `cmake --build . --target install --config Release -j1` command, I get the following compile-time error:
```
[ 3%] Built target clipper
[ 3%] Building CXX object src/clipper2/CMakeFiles/Clipper2.dir/Clipper2Lib/src/clipper.engine.cpp.o
In file included from /home/alok/src/BambuStudio/src/clipper2/Clipper2Lib/include/clipper2/clipper.engine.h:22,
from /home/alok/src/BambuStudio/src/clipper2/Clipper2Lib/src/clipper.engine.cpp:16:
/home/alok/src/BambuStudio/src/clipper2/Clipper2Lib/include/clipper2/clipper.core.h:117:26: error: template-id not allowed for constructor in C++20 [-Werror=template-id-cdtor]
117 | explicit Point<T>(const Point<T2>& p) { Init(p.x, p.y); }
| ^
/home/alok/src/BambuStudio/src/clipper2/Clipper2Lib/include/clipper2/clipper.core.h:117:26: note: remove the ‘< >’
cc1plus: all warnings being treated as errors
gmake[2]: *** [src/clipper2/CMakeFiles/Clipper2.dir/build.make:76: src/clipper2/CMakeFiles/Clipper2.dir/Clipper2Lib/src/clipper.engine.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:699: src/clipper2/CMakeFiles/Clipper2.dir/all] Error 2
gmake: *** [Makefile:166: all] Error 2
```
g++ is throwing a C++20 error, even though src/clipper2/CMakeLists.txt explicitly specifies C++17:
```
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
```
### Expected results
Compilation should complete without errors
### Project file & Debug log uploads
N/A
### Checklist of files to include
- [X] Log file
- [X] Project file04 / LABELS
Labels from the report text only; not yet run
No supported category has been assigned.
Label rules and the text that matched
[]