I’m getting the following error when running cmake in a clean build directory:
CMake Error at CMakeLists.txt:209 (list):
list GET given empty list
This happens since commit 76f472aca2. I was bypassing the problem by just reverting that commit in my local copy of the repo. However, the latest changes in the file changed by that commit created conflicts with my revert, so better to know what’s happening and solve it instead of just ignoring it.
The error happens even when no options are passed to cmake; I also tested it with the make and Ninja build systems, but the error persists.
Ok, so it seems like you already hit another warning on the way. So the problem is that we can’t find the c++ header files with the help of your compiler. I’m not sure your your g++ or ccache is configured, but could you try to run without ccache first? Maybe it’s returning the wrong output when we try to invoce ccache -v. Could you try without ccache?
Ok, seems like CMake fails to parse the libstdc++ path that gcc is returning (this is why you get this warning).
Can you rerun cmake but add " --trace-expand" as an argument? E.g. cmake <your normal args> --trace-expand ../path/to/root and pastebin the output of this. It’s a lot of output as it prints every executed CMake statement, so you might want to add a 2>log.txt at the end to save the debug output to this log file instead.
I see, it’s a locale problem. Please run LANG=C cmake ../root-source instead and it should work. I made a JIRA issue for this: ROOT-8917. It’s also fixed in PR #780, if you want, you can test this and confirm if it fixes your problem.
I just tested the PR and it seems to work fine: the configuration step completed successfully, and I’m now building with Ninja and ccache with no errors so far.