Если MATLAB ® не может найти все.dll файлы, на которые ссылается файл MEX, он не может загрузить файл MEX. MATLAB выводит следующее сообщение об ошибке:
Invalid MEX-file mexfilename: The specified module could not be found.
где mexfilename - модуль с ошибкой зависимости. Этот модуль не может найти зависимые библиотеки. Чтобы устранить эту ошибку, найдите имена зависимых библиотек и определите, присутствуют ли они в системе и в системном пути. Чтобы найти зависимости библиотеки, выполните следующие действия.
В системах Windows ® загрузите утилиту Dependency Walker с веб-сайта https://www.dependencywalker.com.
В системах Linux ® используйте:
ldd -d libname.so
В системах macOS используйте:
otool -L libname.dylib
Для .dll файлы, с которыми связан файл MEX при его создании, .dll файлы должны находиться в системном пути или в той же папке, что и файл MEX.
Для файлов MEX могут потребоваться дополнительные библиотеки, не связанные с файлом MEX. Сбой при поиске одной из этих явно загруженных библиотек может не помешать загрузке MEX-файла, но помешать его правильной работе. Код, загружающий библиотеки, определяет путь поиска, используемый для поиска этих библиотек. Путь поиска может не включать папку, содержащую файл MEX. Обратитесь к документации библиотеки в соответствующих местах установки.
Возможные причины отказа:
Несовместимость версий MATLAB. Дополнительные сведения см. в разделе Совместимость версий MEX.
Отсутствуют библиотеки времени выполнения компилятора. Если в вашей системе отсутствует компилятор, построивший файл MEX, обратитесь к веб-сайту Microsoft ® MSDN ® за информацией о распространяемых пакетах Visual C++ ®.
Отсутствуют или неправильно установлены специализированные библиотеки времени выполнения. Обратитесь к поставщику файла или библиотеки MEX.