[konsole] [Bug 432639] New: Konsole needs gcc > 8.3 (fully supporting C++17) for for_each_n function
bugzilla_noreply at kde.org
bugzilla_noreply at kde.org
Mon Feb 8 12:48:46 GMT 2021
https://bugs.kde.org/show_bug.cgi?id=432639
Bug ID: 432639
Summary: Konsole needs gcc > 8.3 (fully supporting C++17) for
for_each_n function
Product: konsole
Version: master
Platform: Compiled Sources
OS: Linux
Status: REPORTED
Severity: normal
Priority: NOR
Component: general
Assignee: konsole-devel at kde.org
Reporter: rcorreia31 at gmail.com
Target Milestone: ---
SUMMARY
By default CentOS 8.3 uses gcc 8.3.1.
Konsole from master now fails due to this error:
/media/MyPassport/git/konsole/src/Screen.cpp: In function 'void toDebug(const
Konsole::Character*, int, bool)':
/media/MyPassport/git/konsole/src/Screen.cpp:394:10: error: 'for_each_n' is not
a member of 'std'
std::for_each_n(s, count, [&out](const Character &i) { out += i.character;
});
^~~~~~~~~~
/media/MyPassport/git/konsole/src/Screen.cpp:394:10: note: suggested
alternative: 'for_each'
std::for_each_n(s, count, [&out](const Character &i) { out += i.character;
});
^~~~~~~~~~
for_each
To be able to compile, another tool chain fully supporting C++17 must be
installed and enabled: dnf install gcc-toolset-10-toolchain (or
gcc-toolset-9-toolchain).
Then all compiles well.
This is the first time this requirement appears for KDE from what I can tell.
A link about that: https://github.com/VcDevel/Vc/issues/182
Even if this is easily fixed with a newer toolchain, it will cause some
questions.
STEPS TO REPRODUCE
1. cmake
2. make
OBSERVED RESULT
Compilation error:
/git/konsole/src/Screen.cpp:394:10: error: 'for_each_n' is not a member of
'std'
/git/konsole/src/Screen.cpp:394:10: note: suggested alternative: 'for_each'
EXPECTED RESULT
Change to a source code allowing a successful compilation with gcc 8.3.x or add
a cmake check explaining this new requirement (dnf install
gcc-toolset-10-toolchain or dnf install gcc-toolset-9-toolchain).
SOFTWARE/OS VERSIONS
KDE Plasma Version: 5.20.2
KDE Frameworks Version: 5.76.0
Qt Version: 5.15.1
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the konsole-devel
mailing list