ошибка matlab или ошибка libsvm, связанная с файлами mex

Я использую libsvm с Matlab R2011. Моя проблема в том, что он внезапно начал выдавать мне ошибку о файлах mex и больше не запускается. Интересно, что та же программа работала некоторое время назад, но теперь она не работает. Ошибка заключается в следующем.

%%%%%%%%%%%%%%%%%%%%

Нарушение сегментации обнаружено в четверг, 21 марта, 07:01:31 2013 г.

.......тогда какое-то имя файла трассировки стека....

Эта ошибка была обнаружена во время работы MEX-файла. Если MEX-файл не является официальной функцией MathWorks, проверьте его исходный код на наличие ошибок. Пожалуйста, обратитесь к Руководству по внешним интерфейсам для получения информации об отладке MEX-файлов. Пойман MathWorks::System::FatalException

%%%%%%%%%%%%%%%%%%

может ли кто-нибудь помочь мне в этом? Спасибо.


person karan    schedule 21.03.2013    source источник
comment
снова настройте среду смешивания, набрав mex -setup в командном окне MATLAB.   -  person Autonomous    schedule 21.03.2013
comment
Я уже сделал это. После этого я разместил вопрос. Даже переустановил libsvm. В выводе ничего не изменилось.   -  person karan    schedule 21.03.2013


Ответы (2)


Возможна ошибка в формате входных данных. Поскольку libsvm имеет открытый исходный код, вы можете попробовать отладить свой mex-файл с помощью Visual Studio (в Windows) путем присоединения к процессу. Google "отладка файлов MEX" для более подробной информации

person user2194365    schedule 21.03.2013
comment
На самом деле, как я уже сказал выше, тот же код работал раньше, но теперь внезапно он начал показывать эту ошибку. Формат входных данных или код не изменились. Просто происходит изменение класса. - person karan; 21.03.2013
comment
Изменяя классы, он изменит данные, которые вычисляет libsvm, поэтому это может вызвать ошибку деления на ноль внутри mex. - person user2194365; 22.03.2013

Возможно, вы забыли удалить некоторые пути, вы можете проверить некоторые пути, которые вы добавили ранее. После того, как вы добавили некоторые пути, вы должны удалить их. Если вы этого не сделаете, он не будет знать, какую функцию использовать.

person Xiaoyan Gao    schedule 15.08.2014