Это будет варьироваться от одного дистрибутива к другому, но я думаю, что это результат использования функции PrivateTmp: true
systemd.
Как описано в разделе Service -Private /tmp этого сообщения в блоге Леннарта Поттеринга:
Internally, this feature makes use of file system namespaces of the kernel. If enabled a new file system namespace is opened inheritng most of the host hierarchy with the exception of /tmp
См., например, этот отчет об ошибке с просьбой добавить эту опцию в Fedora.
Ответ заключается в том, что MKLROOT находится там, где вы установили MKL. На моей машине это /opt/intel/mkl/
, но у вас может быть по-другому. Информацию о каталогах установки MKL по умолчанию в различных ОС можно найти здесь .
Вам также не нужен MKL для использования OSQP. Если вы используете cmake для прямой сборки OSQP, вы можете указать -DENABLE_MKL_PARDISO=FALSE
, и в этом случае OSQP будет использовать только свой собственный линейный решатель qdldl
.