Skip to content

Regression: Linking against ROOT 6.40.04 gives dyld bus error #302134

Description

@2xB

brew config AND brew doctor output OR brew gist-logs <formula> link

HOMEBREW_VERSION: 6.0.21
ORIGIN: https://github.com/Homebrew/brew
HEAD: 560147012b9678b42ef5e83b690f0895552d1366
Last commit: 28 hours ago
Branch: stable
Core tap: N/A
Core cask tap: N/A
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_CASK_OPTS: ["--no-quarantine"]
HOMEBREW_NO_AUTO_UPDATE: set
HOMEBREW_NO_INSTALL_CLEANUP: set
Homebrew Ruby: 4.0.6 => /opt/homebrew/Library/Homebrew/vendor/portable-ruby/4.0.6/bin/ruby
CPU: 3-core 64-bit dunno
Clang: 21.0.0 build 2100
Git: 2.55.0 => /opt/homebrew/bin/git
Curl: 8.7.1 => /usr/bin/curl
macOS: 26.5.2-arm64
CLT: 26.6.0.0.1781586589
Xcode: 26.6 => /Applications/Xcode_26.6.app/Contents/Developer
Metal Toolchain: 17.0 (17F109)
Rosetta 2: false
Your system is ready to brew.

Verification

  • My brew doctor output says Your system is ready to brew. and am still able to reproduce my issue.
  • I ran brew update and am still able to reproduce my issue.
  • I have resolved all warnings from brew doctor and that did not fix my problem.
  • I searched for recent similar issues at https://github.com/Homebrew/homebrew-core/issues?q=is%3Aissue and found no duplicates.
  • My issue is not about a failure to build a formula from source.
  • I did not use AI/LLM to create this issue, or I disclosed the tool and model used; I will answer maintainer questions myself without AI/LLM.

What were you trying to do (and why)?

We compiled https://github.com/KATRIN-Experiment/Kassiopeia against ROOT 6.40.04 and tried to run it.

What happened (include all command output)?

Also compare the log of the CI in my test fork: 2xB/Kassiopeia#40 .

That failed in a bus error and a long error message by DYLD.
Compiling our project against ROOT and executing it since updating from ROOT 6.40.02_1 to 6.40.04 results in:

 *** Break *** bus error
[/usr/lib/system/libsystem_platform.dylib] _sigtramp (no debug info)
[/usr/lib/dyld] invocation function for block in dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&) const::$_0::operator()() const (no debug info)
[/usr/lib/dyld] invocation function for block in dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&, dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int) block_pointer, void const*) const (no debug info)
[/usr/lib/dyld] invocation function for block in mach_o::UnsafeHeader::forEachSection(void (mach_o::UnsafeHeader::SectionInfo const&, bool&) block_pointer) const (no debug info)
[/usr/lib/dyld] mach_o::UnsafeHeader::forEachLoadCommand(void (load_command const*, bool&) block_pointer) const (no debug info)
[/usr/lib/dyld] mach_o::UnsafeHeader::forEachSection(void (mach_o::UnsafeHeader::SectionInfo const&, bool&) block_pointer) const (no debug info)
[/usr/lib/dyld] dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&, dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int) block_pointer, void const*) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&) const (no debug info)
[/usr/lib/dyld] dyld4::JustInTimeLoader::runInitializers(dyld4::RuntimeState&) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUp(dyld4::RuntimeState&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&, lsl::Vector<AuthenticatedValue<dyld4::Loader const*>>&) const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::RuntimeState&) const::$_0::operator()() const (no debug info)
[/usr/lib/dyld] dyld4::Loader::runInitializersBottomUpPlusUpwardLinks(dyld4::RuntimeState&) const (no debug info)
[/usr/lib/dyld] dyld4::prepare(dyld4::APIs&, mach_o::UnsafeHeader const*) (no debug info)
[/usr/lib/dyld] dyld4::start(dyld4::KernelArgs*, void*, void*, unsigned long long)::$_1::operator()() const (no debug info)
[/usr/lib/dyld] start (no debug info)

What did you expect to happen?

It should just run fine as before.

Step-by-step reproduction instructions (by running brew commands)

git clone https://github.com/KATRIN-Experiment/Kassiopeia
cd Kassiopeia
brew install \
            cmake \
            coreutils \
            boost \
            fftw \
            gsl \
            hdf5 \
            libxml2 \
            log4cxx \
            open-mpi \
            root \
            sqlite \
            vtk \
            libomp
export CC=/usr/bin/clang
export CXX=/usr/bin/clang++
./setup.sh
source install/bin/kasperenv.sh
UnitTestKasper

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs responseNeeds a response from the issue/PR author

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions