Compilation problem: ROOT v6-08-00 in macOS 10.12

Full information:

ROOT version:
HEAD detached at v6-08-00
macOS Sierra Version 10.12.1 (16B2555)
XQuartz 2.7.11 (xorg-server 1.18.4)
Apple LLVM version 8.0.0 (clang-800.0.42.1)
XCode Version 8.1 (8B62)
cmake version 3.6.3

Compiling with:
cmake /Users/trtomei/root -Droofit=ON -Dtmva=OFF -Dlibcxx=ON

results in:

Scanning dependencies of target G__Core [ 50%] Generating G__Core.cxx, ../../lib/libCore.rootmap ERROR in cling::CIFactory::createCI(): cannot extract standard library include paths! CLING_CXX_INCL, CLING_CXX_PATH, and CLING_CXX_RLTV are undefined, there was probably an error during configuration. input_line_1:1:10: fatal error: 'new' file not found #include <new> ^ Warning in cling::IncrementalParser::CheckABICompatibility(): Possible C++ standard library mismatch, compiled with _LIBCPP_VERSION v3700 but extraction of runtime standard library version failed. In file included from input_line_4:1: In file included from /Users/trtomei/rootbuild/etc/cling/lib/clang/3.9.0/include/assert.h:8: In file included from /usr/include/assert.h:42: /usr/include/sys/cdefs.h:81:2: warning: "Unsupported compiler detected" [-W#warnings] #warning "Unsupported compiler detected" ^ /usr/include/sys/cdefs.h:761:2: error: Unsupported architecture #error Unsupported architecture ^ In file included from input_line_4:2: In file included from /Users/trtomei/rootbuild/etc/cling/lib/clang/3.9.0/include/stdlib.h:8: In file included from /usr/include/stdlib.h:63: In file included from /usr/include/_types.h:27: In file included from /usr/include/sys/_types.h:33: /usr/include/machine/_types.h:34:2: error: architecture not supported #error architecture not supported ^

Any hints?

Cheers,
Thiago

have you installed the Xcode command line tools ?

xcode-select --install

Yes:

$ xcode-select --install xcode-select: error: command line tools are already installed, use "Software Update" to install updates

cmake /Users/trtomei/root -Droofit=ON -Dtmva=OFF -Dlibcxx=ON
  • Seems to me tuva is off by default.
  • I never used -Dlibcxx=ON … could be the issue ?

I would expect that in a mac, usage of libc++ (as opposed to libstdc++) would be encouraged… :slight_smile:
Recompiling, will report back ASAP.

Hi,

Error persists :frowning:

Scanning dependencies of target G__Core [ 50%] Generating G__Core.cxx, ../../lib/libCore.rootmap ERROR in cling::CIFactory::createCI(): cannot extract standard library include paths! CLING_CXX_INCL, CLING_CXX_PATH, and CLING_CXX_RLTV are undefined, there was probably an error during configuration. input_line_1:1:10: fatal error: 'new' file not found #include <new> ^ Warning in cling::IncrementalParser::CheckABICompatibility(): Possible C++ standard library mismatch, compiled with _LIBCPP_VERSION v3700 but extraction of runtime standard library version failed. In file included from input_line_4:1: In file included from /Users/trtomei/rootbuild/etc/cling/lib/clang/3.9.0/include/assert.h:8: In file included from /usr/include/assert.h:42: /usr/include/sys/cdefs.h:81:2: warning: "Unsupported compiler detected" [-W#warnings] #warning "Unsupported compiler detected" ^ /usr/include/sys/cdefs.h:761:2: error: Unsupported architecture #error Unsupported architecture

Can you please attach the full output of the configuration (cmake command) on a clean build area. Thanks

Here you go.
fullOutputConfiguration.txt (10.5 KB)

I do not see anything obvious. What is the content of the file
/interpreter/cling/lib/Interpreter/cling-compiledata.h ?

Hi,

No such file. There’s cling-compiledata.h.in , however, with:



        #define CLING_CXX_INCL "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1"
        #define CLING_CXX_PATH "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -O2 -DNDEBUG"
        #define CLING_INCLUDE_PATHS ""

The extra whitespace is all there, FWIW.

Yes, this is normal since probably you only did the configuration and the file is created at ‘make’ time.
To me still looks very similar to my system. Investigating…

Do you have the file cling-compiledata.h in sources? /interpreter/cling/lib/Interpreter/cling-compiledata.h . This could be a left over of an attempt to build with the classic configure/make.

Hi Pere,

That was it. I decided to simply scrap clean the directory, download everything again, and try to compile again.
It works now. I wouldn’t expect that classic configure/make would step in cmake’s toes like that…

Thanks,
Thiago

I have committed a fix to avoid this problem. Thanks for reporting.