Move to gcc 10 for Node.js 20? #45892
Replies: 2 comments
-
Given that we have gcc 10 available for all of our platforms using gcc, it sounds like it is reasonable to plan to move to gcc 10 for Node.js 20. |
Beta Was this translation helpful? Give feedback.
-
i think It seems that upgrading the minimum supported version of gcc to 10 is necessary for Node.js 20 due to issues with unsupported features and bugs in the older gcc 8 compiler, as well as the desire to take advantage of the improved C++20 feature availability in more recent versions of gcc. This upgrade would involve updating the documentation and warning in the build process, as well as updating the CI machines used for testing. It may also require installing newer versions of gcc on certain systems. |
Beta Was this translation helpful? Give feedback.
-
Node.js 20 is scheduled for April 2023.
We are currently building most of the Unix-like platforms with gcc 8 (macOS and FreeBSD use clang). Furthermore we've started to see issues with bugs/unsupported features with gcc 8 in upstream V8:
which are unlikely to be fixed as gcc 8 is no longer supported by gnu.
In Node.js itself we've seen an issue on arn64 where gcc deprecated one compile option (
-msign-return-address=all
) for another (-mbranch-protection
, introduced in gcc 9): #45756 (comment)Furthermore, upstream V8 are also moving to C++20 (we have #45402 open to discuss the same for Node.js. C++20 feature availability is better with more recent versions of gcc.
Semver major boundaries are the natural place to bump build requirements. Thoughts on bumping the minimum supported gcc compiler for Node.js 20 to gcc 10?
I have checked and gcc 10 is available on the platforms that we are currently building with gcc 8 (some platforms do not have gcc 11).
In terms of practicalities this would involve:
node/configure.py
Lines 1023 to 1025 in 464e4d2
Beta Was this translation helpful? Give feedback.
All reactions