Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use DYLD_FALLBACK_LIBRARY_PATH for dylib_path_envvar on macOS
When loading and linking a dynamic library or bundle, dlopen searches in LD_LIBRARY_PATH, DYLD_LIBRARY_PATH, PWD, and DYLD_FALLBACK_LIBRARY_PATH. In the Mach-O format, a dynamic library has an "install path." Clients linking against the library record this path, and the dynamic linker, dyld, uses it to locate the library. dyld searches DYLD_LIBRARY_PATH *before* the install path. dyld searches DYLD_FALLBACK_LIBRARY_PATH only if it cannot find the library in the install path. Setting DYLD_LIBRARY_PATH can easily have unintended consequences. See https://users.rust-lang.org/t/subprocess-and-dynamic-library-linking-problem-interaction/7873/10 See https://trac.macports.org/ticket/57692 See https://bugzilla.mozilla.org/show_bug.cgi?id=1536486 This is the same change as was applied to cargo in rust-lang/cargo#6355 See also rust-lang/cargo#6625 and rust-lang/cargo#6625
- Loading branch information