Как ссылаться на системные библиотеки, а не на библиотеки, предоставляемые Matlab
У нас установлен Matlab R2017a на машине RHEL 7.3, и я могу предоставить подробные инструкции по установке при необходимости. У нас есть пути к библиотеке Matlab, сохраненные в /etc/ld.so.conf.d/matlab.conf
и побежал ldconfig
чтобы убедиться, что пути выбраны. Matlab работает и все работает. Тем не менее, Matlab поставляется со своими собственными версиями библиотек, такими как libstdc++
, libicui18n
, и другие.
Я пытаюсь собрать и связать не Matlab исполняемый файл с двумя библиотеками, упомянутыми выше, и он ссылается на Matlab, а не на систему. Как я могу сказать компоновщику использовать предоставленные системой библиотеки? Я почти уверен, что это не специфичная для Matlab проблема, но это именно та среда, в которой я работаю. Любые мысли будут высоко оценены.
Вот что наш /etc/ld.so.conf.d/matlab.conf
файл выглядит так. Основываясь на некоторых тестах, похоже, что все три из них необходимы.
/opt/MATLAB/R2017a/bin/glnxa64
/opt/MATLAB/R2017a/runtime/glnxa64
/opt/MATLAB/2017a/sys/os/glnxa64
В библиотеке установлены библиотеки runtime
которые зависят от библиотек, установленных в sys/os
, Библиотеки в sys/os
конфликтуют с системными библиотеками RHEL (такими как libstdc++
).