Details
-
Type:
Story
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: Validation
-
Labels:None
-
Story Points:1
-
Team:Alert Production
Description
validate_drp does not work on El Capitan due to SIP (System Integrity Protection) stripping DYLD_LIBRARY_PATH from shell scripts. The simple fix is to add
export DYLD_LIBRARY_PATH=${LSST_LIBRARY_PATH}
|
near the top of the scripts.
I am willing to back off as far as:
# OS X El Capitan swallows DYLD_LIBRARY_PATH so we use the duplicate in LSST_LIBRARY_PATH
if [[ $(uname -s) = Darwin* ]]; then
export DYLD_LIBRARY_PATH=$LSST_LIBRARY_PATH
fi
or
# OS X El Capitan swallows DYLD_LIBRARY_PATH so we use the duplicate in LSST_LIBRARY_PATH
if [[ -z "$DYLD_LIBRARY_PATH" ]]; then
export DYLD_LIBRARY_PATH=$LSST_LIBRARY_PATH
fi
but am very strongly opposed to doing both. This code will potentially show up in a lot of places, and there is no need to get fancy. If we do find a mistake in it, it's going to be a big headache to fix. DYDL_LIBRARY_PATH is ignored on linux and can always be set on darwin so the simplest one-liner is my personal preference. The one-liner will show mistakes in setting LSST_LIBRARY_PATH on Yosemite, which is a small vote in its favor.