Я пытаюсь использовать сторонний SDK, который в основном написан на C++. Их рекомендуемый подход для запуска скомпилированного вывода (драйвер ODBC) в OSX включает установку переменной среды DYLD_LIBRARY_PATH
для указания путей к некоторым необходимым библиотекам.
Установка этой переменной работала нормально для тестирования драйвера с помощью утилит командной строки, но для приложений с графическим интерфейсом, запущенных вне текущего сеанса оболочки, мне нужно было бы установить DYLD_LIBRARY_PATH
глобально.
После выполнения некоторых инструкций Yosemite здесь: https://stackoverflow.com/questions/25385934/setting-environment-variables-via-launchd-conf-no-longer-works-in-os-x-yosemite я смог установить переменные игрушки в масштабе всей системы, например: launchctl setenv FOO BAR
и отобразить их после перезагрузки, но любая переменная, начинающаяся с подстроки DYLD
, будет отсутствовать в моей среде.
С тех пор я решил проблему, скомпилировав проект со статическими библиотеками, включенными явно, но вопрос остается:
Почему переменные, начинающиеся конкретно с "DYLD"
, игнорируются?