Mexopencv файл mex не найден

Я вызвал файл mex, скомпилированный с помощью mexopencv из Matlab. Программа работает в matlab и не вызывает проблем, но когда я конвертирую matlab в общую библиотеку c ++ с помощью инструмента развертывания matlab и компилирую в exe-приложение при запуске exe, я получаю сообщение об ошибке, что mexfile не найден или он недействителен. путь к файлу или каталог. В чем может быть причина этого? Следует ли мне добавлять какие-либо дополнительные библиотеки или путь в мой Makefile или мне следует изменить системный путь? Я использую Linux и MATLAB R2012a, mexopencv.

Обратите внимание, что файл mex можно вызвать из Matlab, и он дает вывод, но не может быть вызван exe. Я пытаюсь запустить модуль facedetection, который уже есть в примерах mexopencv. Для него требуется XML-файл в качестве входных данных. Почему он не может обнаружить файл mex и файл xml?


person user1583647    schedule 28.08.2013    source источник


Ответы (1)


Инструмент развертывания должен вводить файлы MEX, поэтому я должен предположить, что зависимости файлов mexopencv не включены в сгенерированную библиотеку или доступны через LD_LIBRARY_PATH или LD_PRELOAD. Это будут библиотеки OpenCV (например, libopencv_core.so.2.4, libopencv_imgproc.so.2.4 и т. Д.).

Проверьте наличие дополнительных зависимостей mex-файлов mexopencv с ldd (для пользователей Windows используйте Dependency Walker). РЕДАКТИРОВАТЬ: затем добавьте их!

person chappjc    schedule 14.09.2013