Errors Installing ROOT with TMVA SOFIE on Mac OS

Hi,

I’m trying to install ROOT with TMVA SOFIE, however I’m met with an error before building.

Initially, I did the following line-by-line to install protobuf:

brew update
brew upgrade
brew install protobuf
brew upgrade protobuf
protoc --version

The protoc version installed is:
libprotoc 3.19.4

Next, to install ROOT with SOFIE, line-by-line I run the following:

git clone https://github.com/root-project/root.git root_src
mkdir root_build root_install && cd root_build
cmake -Dtmva-sofie=ON -DCMAKE_INSTALL_PREFIX=../root_install ../root_src

This appears to work, but finally an error appears after “Configuring done”:

-- Enabled support for:  asimage builtin_afterimage builtin_clang builtin_cling builtin_freetype builtin_ftgl builtin_gl2ps builtin_glew builtin_llvm builtin_nlohmannjson builtin_openssl builtin_openui5 builtin_tbb builtin_vdt builtin_xrootd builtin_xxhash clad cocoa dataframe exceptions gdml http imt libcxx mlp minuit2 opengl pyroot roofit rpath runtime_cxxmodules shared sqlite ssl tmva tmva-cpu tmva-sofie tmva-pymva spectrum vdt xml xrootd
-- Configuring done
CMake Error at builtins/xrootd/CMakeLists.txt:74 (target_link_libraries):
  The link interface of target "xrootd" contains:

    OpenSSL::SSL>

  but the target was not found.  Possible reasons include:

    * There is a typo in the target name.
    * A find_package call is missing for an IMPORTED target.
    * An ALIAS target is missing.



-- Generating done
CMake Generate step failed.  Build files cannot be regenerated correctly.

What is the meaning of this error and how can I fix it? Please let me know if there’s any more information I can provide to help. I intend to use only SOFIE from ROOT, so if this can be fixed by leaving out certain options as a quick-fix then I will be happy to do that.

Versions:
Mac OS: 12.0.1
AppleClang: 12.0.0.12000031
ProtoBuf: 3.19.4
Cmake: 3.23.0-rc1

Many thanks,
dilne

Hi,
It seems you are missing openssl, you can try to configure with -Dbuiltin_openssl=On. If this still does not work, you can try disabling xrootd that is not needed for TMVA SOFIE (-Dxrootd=Off).
If you still have any problem, please attach your configure and build log file.

Cheers

Lorenzo

1 Like

Using -Dbuiltin_openssl=On brought up the same error, but -Dxrootd=Off fixed the error. During the build I did get an error with clad, but retrying with -Dclad=OFF fixed this error and I think I am ready to use SOFIE!

Many thanks for your help Lorenzo!

To summarise my SOFIE installation process for anyone else struggling:

brew update
brew upgrade
brew install protobuf
brew upgrade protobuf
protoc --version # my version was libprotoc 3.19.4

git clone https://github.com/root-project/root.git root_src
mkdir root_build root_install && cd root_build
cmake -Dtmva-sofie=ON -Dxrootd=Off -Dclad=OFF -DCMAKE_INSTALL_PREFIX=../root_install ../root_src
cmake --build . -- install -j3 # I'm using a dual-core device, so using j3. Use >=j4 for quad-core or greater
source ../root_install/bin/thisroot.sh
root

Thank you for posting the solution. If you have nay other issues please let us know
Cheers

Lorenzo