Root branch v6-30-00-patches for C++20 Not Quite Working

@eguiraud what is the minimum gcc/g++ version I need to use to get sufficient C++20 support? I thought you said that gcc 10 and above would suffice (so I upgraded gcc/g++ to 10.5)

I can’t just run root in docker for my situation. In the very near future, we’re hoping to use some of our C++ software libraries to be used in our analysis we hope to run using root. To do that, I eventually need to build root using the same C++ toolchain our software library is built with (still an x86_64-linux platform and 10 > gcc compiler version > 11). One of the main considerations of using root is the ability to bring in our own C++ libraries into our analysis (aside from the fact that it can handle large data). So this preliminary exercise I’m doing is to at least verify that root supports C++20 with gcc/g++ 10.5.

At least what I can gather in the build documentation for root, this was suppose to work (setting the C++ standard to C++20). Unfortunately, the build document doesn’t note what are the minimum requirement for 3rd party libraries (and their versions) that root is dependent on (openGL, X11, etc). I’m solely relying on the cmake configuration to tell me what’s acceptable or not, and yet the cmake configuration didn’t even tell me in my earlier attempts that having a gcc version of 9.4 wasn’t sufficient support for C++20 (which eventually led me to upgrade my default compiler to above 10). I wonder if some lapses of the cmake configuration, also doesn’t check if any of the versions of the 3rd party libraries I have installed on my machine are sufficient (e.g. I don’t think this is the compiler version problem).

So is it the case that building root from source are only supported for specific host platform versions? That is if using ubuntu and specifying a bulid for C++20, that one has to have Ubuntu 22.04 to do that? I didn’t see that as a requirement in the build doc for root …