Occasionally when I export in bash it doesn\'t give an error but it doesn\'t set the environment variable either. Here\'s what I mean:
This works:
ba
This appears to be an OS X protection (added in El Capitan possibly) that prevents these (potentially dangerous) environment variables from being exported to spawned processes.
This thread on the Apple Developer Forums discuss this some.
The official documentation here also documents this briefly:
Spawning children processes of processes restricted by System Integrity Protection, such as by launching a helper process in a bundle with
NSTask
or calling theexec(2)
command, resets the Mach special ports of that child process. Any dynamic linker (dyld
) environment variables, such asDYLD_LIBRARY_PATH
, are purged when launching protected processes.
Try this :
oldifs=$IFS
IFS=$'\n'
export DYLD_LIBRARY=$ABC_HOME
env | grep DYLD
IFS=$oldifs