Another compile issue on Sequoia

I recently updated my Mac Pro to Sequoia and shortly after, ROOT started crashing on the open. I tried a deep reinstall from source (ROOT 6.32 latest-stable) via:

xcode-select --uninstall
xcode-select --install
brew install cmake python ninja git
brew install glew fftw openssl tbb libxml2
git clone --branch latest-stable --depth=1 https://github.com/root-project/root.git root_src
mkdir root_build root_install
cd root_build
cmake -DCMAKE_INSTALL_PREFIX=../root_install ../root_src
brew install zstd
cmake -DCMAKE_INSTALL_PREFIX=../root_install ../root_src -Dbuiltin_glew=ON
cmake --build . 

Unfortunately I end up with this compile crash despite several attempts/variations on the above, including cloning with older tags that I know worked for me in the past:

[ 25%] Built target LLVMDemangle
[ 25%] Building CXX object interpreter/llvm-project/llvm/lib/Support/CMakeFiles/LLVMSupport.dir/AddressRanges.cpp.o
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root_src/interpreter/llvm-project/llvm/lib/Support/AddressRanges.cpp:9:
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root_src/interpreter/llvm-project/llvm/include/llvm/ADT/AddressRanges.h:12:
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root_src/interpreter/llvm-project/llvm/include/llvm/ADT/STLExtras.h:20:
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root_src/interpreter/llvm-project/llvm/include/llvm/ADT/Hashing.h:49:
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root_src/interpreter/llvm-project/llvm/include/llvm/Support/SwapByteOrder.h:17:
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root_src/interpreter/llvm-project/llvm/include/llvm/ADT/bit.h:18:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cstdint:149:5: error: <cstdint> tried including <stdint.h> but didn't find libc++'s <stdint.h> header.           This usually means that your header search paths are not configured properly.           The header search paths should contain the C++ Standard Library headers before           any C Standard Library, and you are probably using compiler flags that make that           not be the case.
  149 | #   error <cstdint> tried including <stdint.h> but didn't find libc++'s <stdint.h> header. \

Any help is greatly appreciated. My compiler is AppleClang 15.0.0 (from Xcode Command Line Tools).

Hi Sam,

Sorry to hear your brew-based setup on Sequoia did not work out of the box for ROOT.
I would start by performing the steps suggested here ROOT on macOS 15 / Xcode 16 - #8 by Danilo to make sure no remnants of previous sdks are around.
We can then discuss further steps if not successful.

Cheers,
D

Hi Danilo,

Thank you for the prompt reply. I followed the steps outlined there by @couet. I again experienced the same crash.

[ 26%] Copying /Users/bein/Desktop/Physics/Postdoc2/Root/root/etc/notebook/JsMVA/js/NetworkDesigner.min.js
[ 26%] Copying clang's clwbintrin.h...
CMake Error at /Users/bein/Desktop/Physics/Postdoc2/Root/root-build/builtins/xrootd/BUILTIN_XROOTD-prefix/src/BUILTIN_XROOTD-stamp/BUILTIN_XROOTD-build-Release.cmake:37 (message):
  Command failed: 2

   '/Library/Developer/CommandLineTools/usr/bin/make'

  See also

    /Users/bein/Desktop/Physics/Postdoc2/Root/root-build/builtins/xrootd/BUILTIN_XROOTD-prefix/src/BUILTIN_XROOTD-stamp/BUILTIN_XROOTD-build-*.log


[ 26%] Copying /Users/bein/Desktop/Physics/Postdoc2/Root/root/etc/notebook/JsMVA/js/NeuralNetwork.js
[ 26%] Copying clang's clzerointrin.h...
-- stdout output is:
...skipping to end...
s/XrdUtils.dir/XrdTls/XrdTlsSocket.cc.o

The log file pointed to there also contains the same crash I saw originally. As an additional note, the first cmake command required an extra argument -Dbuiltin_glew=ON in order not to crash.

Thanks a lot for any help,

Sam

Hi Sam,

This seems to be an issue with your setup.
What happens if you remove the packages installed with brew install glew fftw openssl tbb libxml2 and run cmake ? What is the output of the configuration?

Cheers,
D

Hi Danilo,

I just gave it a try. Specifically I did:

536 brew uninstall --ignore-dependencies glew fftw openssl tbb libxml2
537 brew install glew fftw openssl tbb libxml2
538 cmake -DCMAKE_INSTALL_PREFIX=…/root_install …/root -Dbuiltin_glew=ON
539 make -j4

…however, that ended up with the usual cascade of errors:

[ 54%] Copying /Users/bein/Desktop/Physics/Postdoc2/Root/root/bindings/pyroot/pythonizations/python/ROOT/_pythonization/_tmva/_batchgenerator.py
[ 54%] Built target ROOTPythonizationsPySources
[ 54%] Building CXX object interpreter/llvm-project/llvm/lib/Support/CMakeFiles/LLVMSupport.dir/ABIBreak.cpp.o
[ 54%] Building CXX object interpreter/llvm-project/llvm/lib/Support/CMakeFiles/LLVMSupport.dir/AMDGPUMetadata.cpp.o
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root/interpreter/llvm-project/llvm/lib/Support/AMDGPUMetadata.cpp:15:
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root/interpreter/llvm-project/llvm/include/llvm/Support/AMDGPUMetadata.h:18:
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root/interpreter/llvm-project/llvm/include/llvm/ADT/StringRef.h:12:
In file included from /Users/bein/Desktop/Physics/Postdoc2/Root/root/interpreter/llvm-project/llvm/include/llvm/ADT/DenseMapInfo.h:18:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cstddef:46:5: error: <cstddef> tried including <stddef.h> but didn't find libc++'s <stddef.h> header.           This usually means that your header search paths are not configured properly.           T

Hi Sam,

could you try with a clean build? Do you still encounter these issues?

Hi Monica,

I just tried a clean build via:

  548  xcode-select --install
  551  git clone --branch latest-stable --depth=1 https://github.com/root-project/root.git root_src
  553  mkdir root_build root_install
  554  cd root_build
  556  cmake -DCMAKE_INSTALL_PREFIX=../root_install ../root_src -Dbuiltin_glew=ON
  557  cmake --build . -- install -j4

The result was the usual crash:

[ 20%] Copying header /Users/bein/Desktop/Physics/Postdoc2/Root/root_src/roofit/roostats/inc/RooStats/UpperLimitMCSModule.h to /Users/bein/Desktop/Physics/Postdoc2/Root/root_build/include
[ 20%] Built target move_header_roofit_roostats

-- DAVIX build command succeeded.  See also /Users/bein/Desktop/Physics/Postdoc2/Root/root_build/builtins/davix/DAVIX-prefix/src/DAVIX-stamp/DAVIX-build-*.log
[ 20%] Performing install step for 'DAVIX'
-- DAVIX install command succeeded.  See also /Users/bein/Desktop/Physics/Postdoc2/Root/root_build/builtins/davix/DAVIX-prefix/src/DAVIX-stamp/DAVIX-install-*.log
[ 20%] Completed 'DAVIX'
[ 20%] Built target DAVIX
make: *** [all] Error 2

The output of that first crash log file is:

tail /Users/bein/Desktop/Physics/Postdoc2/Root/root_build/builtins/davix/DAVIX-prefix/src/DAVIX-stamp/DAVIX-build-*.log
==> /Users/bein/Desktop/Physics/Postdoc2/Root/root_build/builtins/davix/DAVIX-prefix/src/DAVIX-stamp/DAVIX-build-err.log <==
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:218:48: note: expanded from macro ‘__deprecated_msg’
218 | #define __deprecated_msg(_msg) attribute((deprecated(_msg)))
| ^
1 warning generated.
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libdavix.a(davix_ptree.cpp.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libdavix.a(ne_ntlm.c.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libdavix.a(ne_sspi.c.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libdavix.a(davix_ptree.cpp.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libdavix.a(ne_ntlm.c.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libdavix.a(ne_sspi.c.o) has no symbols

==> /Users/bein/Desktop/Physics/Postdoc2/Root/root_build/builtins/davix/DAVIX-prefix/src/DAVIX-stamp/DAVIX-build-out.log <==
[ 91%] Building CXX object src/CMakeFiles/libdavix_static.dir/xml/davpropxmlparser.cpp.o
[ 92%] Building CXX object src/CMakeFiles/libdavix_static.dir/xml/davxmlparser.cpp.o
[ 93%] Building CXX object src/CMakeFiles/libdavix_static.dir/xml/metalinkparser.cpp.o
[ 94%] Building CXX object src/CMakeFiles/libdavix_static.dir/xml/s3deleteparser.cpp.o
[ 95%] Building CXX object src/CMakeFiles/libdavix_static.dir/xml/S3MultiPartInitiationParser.cpp.o
[ 96%] Building CXX object src/CMakeFiles/libdavix_static.dir/xml/s3propparser.cpp.o
[ 97%] Building CXX object src/CMakeFiles/libdavix_static.dir/xml/swiftpropparser.cpp.o
[ 98%] Building CXX object src/CMakeFiles/libdavix_static.dir/davixcontext.cpp.o
[100%] Linking CXX static library libdavix.a
[100%] Built target libdavix_static

Thanks for your help,

Sam

It really looks like your setup is somehow broken. Could you please upgrade your OS and then try to rerun these steps?

# remove the current Command Line Tools
sudo rm -r /Library/Developer/CommandLineTools

# Reset xcode-select
xcode-select -r

# Then install. You will be asked to click a button 
xcode-select --install

Check for new version of the Command Line Tools and update it if needed: Go in the System Settings → General → Software Update

Then proceed with a new clean build

# Install ROOT
git clone https://github.com/root-project/root.git
mkdir root-build
cd root-build
cmake -DCMAKE_INSTALL_PREFIX=../root_install ../root_src -Dbuiltin_glew=ON
make install -j4

I also add in the loop @couet, he might give some insights about your issue…