Опция установки обоих путей (разделенных :
) в переменной среды LD_LIBRARY_PATH
во время выполнения - это вариант?(Таким образом, жестко запрограммированный rpath не должен работать.) Пример:
LD_LIBRARY_PATH=$(MKLROOT)/lib/intel64:/opt/intel/compilers_and_libraries_2019.0.117/linux/compiler/lib/intel64_lin ./dftb+
Или поместите export LD_LIBRARY_PATH=$(MKLROOT)/lib/intel64:/opt/intel/compilers_and_libraries_2019.0.117/linux/compiler/lib/intel64_lin
в некоторый файл профиля rc
, чтобы всегда задавался путь к библиотеке.
В любом случае, если уже есть другие пути, которые необходимы в LD_LIBRARY_PATH
, добавьте к нему выше через LD_LIBRARY_PATH=$(MKLROOT)/lib/intel64:/opt/intel/compilers_and_libraries_2019.0.117/linux/compiler/lib/intel64_lin:$LD_LIBRARY_PATH
вместо того, чтобы просто полностью переопределить LD_LIBRARY_PATH
.
Что может / должнотакже работает source
с файлами настройки переменных среды .sh
, которые поставляются вместе с компиляторами Intel и MKL, который, помимо других переменных, таких как MKLROOT, должен настроить LD_LIBRARY_PATH, указывающий как на libiomp5.so
, так и на динамические библиотеки ссылок MKL.