Hi all, trying to build 6.28.04 from source on my mac Ventura. The default compilation worked fine, but I needed to use cxx17 because other codes to be compiled against this root need that.
I used these commands:
mkdir root_src; cd root_src
wget https://root.cern/download/root_v6.28.04.source.tar.gz
tar zxf ./root_v6.28.04.source.tar.gz
mkdir install
mkdir build
cd build
cmake -DCMAKE_CXX_STANDARD=17 \
-DCMAKE_INSTALL_PREFIX=/Users/wjllope/root_src/install ../root-6.28.04/ \
-Dbuiltin_glew=ON -Dbuiltin_openssl=ON -DCMAKE_BUILD_TYPE=Release
cmake --build . --target install
this worked fine for quite a ways until this:
[ 58%] Built target SPlot
[ 58%] Generating G__ROOTVecOps.cxx, ../../lib/ROOTVecOps.pcm
In file included from input_line_10:3:
/Users/wjllope/root_src/build/include/ROOT/RVec.hxx:536:9: error: no member named 'uninitialized_value_construct' in namespace 'std'
std::uninitialized_value_construct(first, last);
~~~~~^
Error: /Users/wjllope/root_src/build/bin/rootcling: compilation failure (/Users/wjllope/root_src/build/lib/libROOTVecOps314929abb2_dictUmbrella.h)
make[2]: *** [math/vecops/G__ROOTVecOps.cxx] Error 1
make[1]: *** [math/vecops/CMakeFiles/G__ROOTVecOps.dir/all] Error 2
make: *** [all] Error 2
and then root built and installed, and runs, just fine. The only difference between cmake configure commands (between my first one and the one that worked) was the ordering of the -D switches in the command. Which a bit unsettling… ;^)
ANyway, very happy with my shiny new root - thanks again!