Запускаю дотнетовскую программу на бубунте. Программа настраивает например LD_LIBRARY_PATH.
Далее вызывается библиотека, которая должна искать so файл в LD_LIBRARY_PATH, но не находит.
Причем если до вызова программы сделать export LD_LIBRARY_PATH=чтотам (или еще проще
export LD_LIBRARY_PATH=чтотам && dotnet app), то все работает.
Вопрос -- почему так? Может библиотека ищет переменные окружения в контексте родительского процесса, т.е. shell
в данном случае? Но кажется, что это не должно зависеть от библиотеки. Тогда что?
Т.е., библиотека не видит вновь созданные переменные окружения в текущем процессе, почему так?