I am trying to compile ROOT 6.11.02 from source on my macbook, running macOS 10.13.1 and Xcode 9.1, using a fresh build directory (I have a working build done with Xcode 8 that I don’t want to spoil).
However I cannot go past this error
Scanning dependencies of target G__Core
[ 53%] Generating G__Core.cxx, ../../lib/libCore.rootmap, ../../lib/Core.pcm
fatal error: virtual filesystem overlay file '/root_build_v6-11-02/include/modulemap.overlay.yaml' not found
Compiler error to early in initialization.
Compiler instance could not be created.
Segmentation fault
make[2]: *** [core/base/G__Core.cxx] Error 1
make[1]: *** [core/base/CMakeFiles/G__Core.dir/all] Error 2
make: *** [all] Error 2
and in fact the /root_build_v6-11-02/include/modulemap.overlay.yaml file is missing from the build directory.
This is my compiler version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 9.0.0 (clang-900.0.38)
Target: x86_64-apple-darwin17.2.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
I have browsed the forum and found a number of problems with the latest update of Xcode to version 9, but none seems to look like this and anyways this recent version of ROOT should already include all the fixes.
Did you maybe enable the build option -Dcxxmodules=On or -Druntime_cxxmodules=On somehow? Also, can you run make with make VERBOSE=1 and post the output that I can see how rootcling is invoked?
To give more context: Somehow ROOT tries to build with the experimental C++ modules features activated. This happens if you somehow have a ROOT_MODULES environment variable defined in your shell or you configured CMake with -Druntime_cxxmodules=On.
Did you maybe enable the build option -Dcxxmodules=On or -Druntime_cxxmodules=On somehow?
yeah, I found out they were enabled. I used ccmake to config the few things I definitely want to include, not sure how and why cxxmodules and runtime_cxxmodules were on, since I don’t even know what they are supposed to do.
Now I set them to OFF and that error is solved.
…but, let me profit from the current thread, I bump into another one