ROOT production release v6.14/00 is out!

https://root.cern.ch/blog/rootrwhy explains why new classes are called ROOT::RSomething.

The compilation on macOS with Xcode 9.4.1 fails if c++17 is enabled with:

[ 80%] Building CXX object tmva/tmva/CMakeFiles/TMVA.dir/src/Factory.cxx.o
/Users/sebastian/Documents/Software/root-6.14.00.source/tmva/tmva/src/Factory.cxx:506:33: error: ambiguous conversion for functional-style cast from 'TString' to 'std::string'
      (aka 'basic_string<char, char_traits<char>, allocator<char> >')
   std::string methodTypeName = std::string(Types::Instance().GetMethodName(methodType));
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:765:5: note: candidate constructor
    basic_string(basic_string&& __str)
    ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:760:5: note: candidate constructor
    basic_string(const basic_string& __str);
    ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:775:31: note: candidate constructor
    _LIBCPP_INLINE_VISIBILITY basic_string(const _CharT* __s);
                              ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:797:5: note: candidate constructor
    basic_string(__self_view __sv);
    ^
1 error generated.
make[2]: *** [tmva/tmva/CMakeFiles/TMVA.dir/src/Factory.cxx.o] Error 1
[ 80%] Building CXX object tmva/tmva/CMakeFiles/TMVA.dir/src/MethodCrossValidation.cxx.o
/Users/sebastian/Documents/Software/root-6.14.00.source/tmva/tmva/src/MethodCrossValidation.cxx:157:44: error: ambiguous conversion for functional-style cast from 'TString' to 'std::string'
      (aka 'basic_string<char, char_traits<char>, allocator<char> >')
      ClassifierFactory::Instance().Create(std::string(methodTypeName), DataInfo(), weightfile));
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:765:5: note: candidate constructor
    basic_string(basic_string&& __str)
    ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:760:5: note: candidate constructor
    basic_string(const basic_string& __str);
    ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:775:31: note: candidate constructor
    _LIBCPP_INLINE_VISIBILITY basic_string(const _CharT* __s);
                              ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:797:5: note: candidate constructor
    basic_string(__self_view __sv);
    ^
1 error generated.
make[2]: *** [tmva/tmva/CMakeFiles/TMVA.dir/src/MethodCrossValidation.cxx.o] Error 1
make[2]: Target `tmva/tmva/CMakeFiles/TMVA.dir/build' not remade because of errors.
make[1]: *** [tmva/tmva/CMakeFiles/TMVA.dir/all] Error 2
[ 95%] Building CXX object geom/gdml/CMakeFiles/Gdml.dir/src/TGDMLWrite.cxx.o
/Users/sebastian/Documents/Software/root-6.14.00.source/geom/gdml/src/TGDMLWrite.cxx:1480:16: error: call to constructor of 'std::string' (aka 'basic_string<char, char_traits<char>, allocator<char> >') is
      ambiguous
   std::string format(TString::Format("%s/%s", fltPrecision.Data(), fltPrecision.Data()));
               ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:765:5: note: candidate constructor
    basic_string(basic_string&& __str)
    ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:760:5: note: candidate constructor
    basic_string(const basic_string& __str);
    ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:775:31: note: candidate constructor
    _LIBCPP_INLINE_VISIBILITY basic_string(const _CharT* __s);
                              ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:797:5: note: candidate constructor
    basic_string(__self_view __sv);
    ^
1 error generated.
make[2]: *** [geom/gdml/CMakeFiles/Gdml.dir/src/TGDMLWrite.cxx.o] Error 1
make[2]: Target `geom/gdml/CMakeFiles/Gdml.dir/build' not remade because of errors.
make[1]: *** [geom/gdml/CMakeFiles/Gdml.dir/all] Error 2

In master this seems to be fixed by commit 5c1921a4be42c195c4490521de35774f5f1a2aa0, could this be cherry-picked to the 6.14 branch as well?

Just to add, I can confirm I also am seeing these build failures.

@Axel should we pin this?

1 Like

I have been trying to build ROOT 16.14/00 with Ubuntu 16.4 and GCC 4.8.0.

I get the following error every time I run “cmake --build .” in the build directory:

[ 88%] Generating G__ROOTVecOps.cxx, ../../lib/libROOTVecOps_rdict.pcm, ../../lib/libROOTVecOps.rootmap
In file included from input_line_12:7:
/usr/local/root6.14/include/ROOT/RVec.hxx:36:10: fatal error: 'vdt/vdtMath.h' file not found
#include <vdt/vdtMath.h>
         ^~~~~~~~~~~~~~~
Error: /usr/local/root6.14/bin/rootcling: compilation failure (/usr/local/root6.14/lib/libROOTVecOpse693d0882a_dictUmbrella.h)
math/vecops/CMakeFiles/G__ROOTVecOps.dir/build.make:69: recipe for target 'math/vecops/G__ROOTVecOps.cxx' failed
make[2]: *** [math/vecops/G__ROOTVecOps.cxx] Error 1
CMakeFiles/Makefile2:21150: recipe for target 'math/vecops/CMakeFiles/G__ROOTVecOps.dir/all' failed
make[1]: *** [math/vecops/CMakeFiles/G__ROOTVecOps.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2

3 posts were split to a new topic: Windows install issue with v6.14/00

Done, thanks for reporting! It will be part of a v6.14/02 that we expect in a couple of weeks.

A post was merged into an existing topic: Windows install issue with v6.14/00

Some more info on the fresh new RDataFrame interface in this post.

1 Like

@uzair90 Please try again with GCC 4.8.5 or newer. ROOT needs full support for C++11, and GCC 4.8.0 does not have it yet.

Edit: This specific problem may actually be a problem with dependencies in CMake, however (see ROOT-9478).

And Ubuntu 16.04 comes with GCC 5.3.

Hello,
I am also having trouble with root installation. This is the error I am getting:

[ 88%] Generating G__ROOTVecOps.cxx, ../../lib/libROOTVecOps_rdict.pcm, ../../lib/libROOTVecOps.rootmap
In file included from input_line_12:7:
/home/arka/Root6_Build/include/ROOT/RVec.hxx:36:10: fatal error: 'vdt/vdtMath.h' file not found
#include <vdt/vdtMath.h>
         ^~~~~~~~~~~~~~~
Error: /home/arka/Root6_Build/bin/rootcling: compilation failure (/home/arka/Root6_Build/lib/libROOTVecOpse1583191ba_dictUmbrella.h)
math/vecops/CMakeFiles/G__ROOTVecOps.dir/build.make:69: recipe for target 'math/vecops/G__ROOTVecOps.cxx' failed
make[2]: *** [math/vecops/G__ROOTVecOps.cxx] Error 1
CMakeFiles/Makefile2:20851: recipe for target 'math/vecops/CMakeFiles/G__ROOTVecOps.dir/all' failed
make[1]: *** [math/vecops/CMakeFiles/G__ROOTVecOps.dir/all] Error 2
Makefile:151: recipe for target 'all' failed
make: *** [all] Error 2

This is my gcc version ubuntu 18.04:
gcc (Ubuntu 7.3.0-16ubuntu3) 7.3.0

How do I fix this issue?

Thanks,
Arka

Hi Arka,

see Guilherme’s comment in the linked Jira ticket: Loading...

you should add the line

set_property(GLOBAL APPEND PROPERTY ROOT_BUILTIN_TARGETS VDT)

right after line set(vdt ON CACHE BOOL "" FORCE) in file cmake/modules/SearchInstalledSoftware.cmake.

Cheers, Axel.

Alternatively, without making any change to ROOT, you can do (in the build directory):

$ cmake --build . --target VDT
$ cmake --build .

The problem is that CMake fails to add a dependency on VDT, so it is not built early enough.
This is being fixed here: https://github.com/root-project/root/pull/2205.

1 Like

The problem is fixed. Thank you very much.

It’s also fixed on the master and 6.14 branches as well, so when 6.14/02 is released, this will not be a problem anymore. Cheers,

Hi,
Will there be a binary distribution of v6.14 compatible with SLC 6.9? This doesnt seem to be the case at the moment. Hence one cannot set it up on lxplus - SLC 6.9 from CVMFS either.
And trying to compile ROOT v6.14 on SLC 6.9 runs into other problems, such as requiring cmake version 3.4.3 which doesnt seem to be available for SLC 6.
Any suggestions would be very welcome.
Thanks
Halil

Hi

I am new to jupyter

can we install python 2 and 3 on same system through Jupyter

You could simply log on to lxplus7.cern.ch. Would that be a solution for you?