Mu2e Home

The information on this page may inform your decision about upgrading a Mac computer beyond Yosemite or purchasing a new Mac.

While we do not yet have Mu2e Offline, g4beamline or MARS running on Macs, it should be be pretty easy to get them running; it simply has not been a high priority to do so.

There is one catch, described below that affects all OS versions beyond Yosemite; at this writing, the OS versions El Capitan and Sierra have the problem. (Yosemite is the last version that does NOT have the problem ).

The catch is that it is not possible to run Mu2e Offline on a Mac that has SIP enabled. SIP is a security feature that appeared in the El Capitan release and is also present in Sierra; it is possible to disable SIP in both of these OS versions; there are rumors that it will not be possible to disable SIP in future OS versions. The key element of SIP is that subshells do not inherit DYLD_LIBRARY_PATH from their parent shell; this breaks, art, ROOT, G4 and anything else that counts on DYLD_LIBRARY_PATH for run-time resolution of dynamically loaded libraries. If your executable is 100% statically linked except for system .so files it should work.

While g4beamline and MARS are statically linked, they do link to libraries that may not be - so I am not sure of their status wrt SIP.

There are four known workarounds to SIP

  1. Disable it; this is known to work on El Capitan and Sierra.
  2. Create a Yosemite VM on your Mac; run Mu2e Offline inside that VM
  3. We can distribute art via docker containers, configured to run
  4. Reconfigure our build system and environment to use RPATH rather than DYLD_LIBRARY_PATH; this can only be done after all of the UPS products to which we link do the same.

Fermilab at Work ]  [ Mu2e Home ]  [ Mu2e @ Work ]  [ Mu2e DocDB ]  [ Mu2e Search ]

For web related questions:
For content related questions:
This file last modified Tuesday, 13-Dec-2016 14:11:28 CST
Security, Privacy, Legal Fermi National Accelerator Laboratory