Ошибка при создании файлов C mex в Matlab: разрешение отклонено

Я попытался скомпилировать код C в Matlab.

Я тестировал простой пример кода в подпапках matlabroot/extern/examples. Я сделал следующее:

mex -setup
copyfile(fullfile(matlabroot,'extern','examples','mex', 'yprime.c'), './');
mex -v -g yprime.c

Командная строка выводит следующую информацию, которая, я думаю, должна быть проблемой пути, но я не знаю, как ее решить.

**************************************************************************
 Warning: Neither -compatibleArrayDims nor -largeArrayDims is selected. 
           Using -compatibleArrayDims. In the future, MATLAB will require
           the use of -largeArrayDims and remove the -compatibleArrayDims
           option. For more information, see:
           http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html
**************************************************************************

find: /.DocumentRevisions-V100: Permission denied
find: /.fseventsd: Permission denied
find: /.Spotlight-V100: Permission denied
find: /.Trashes: Permission denied
cfind: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory
find: /Library/Application Support/Apple/ParentalControls/Users: Permission denied
find: /Library/PreferencePanes/TeXDistPrefPane.prefPane: Permission denied
find: /Library/Server/Mail/Data/mta: Permission denied
find: /Library/Server/Mail/Data/spool/active: Permission denied
find: /Library/Server/Mail/Data/spool/bounce: Permission denied
find: /Library/Server/Mail/Data/spool/corrupt: Permission denied
find: /Library/Server/Mail/Data/spool/defer: Permission denied
find: /Library/Server/Mail/Data/spool/deferred: Permission denied
find: /Library/Server/Mail/Data/spool/flush: Permission denied
find: /Library/Server/Mail/Data/spool/hold: Permission denied
find: /Library/Server/Mail/Data/spool/incoming: Permission denied
find: /Library/Server/Mail/Data/spool/maildrop: Permission denied
find: /Library/Server/Mail/Data/spool/private: Permission denied
find: /Library/Server/Mail/Data/spool/public: Permission denied
find: /Library/Server/Mail/Data/spool/saved: Permission denied
find: /Library/Server/Mail/Data/spool/trace: Permission denied

Кто-нибудь может помочь?


person f. c.    schedule 23.11.2013    source источник
comment
попробуйте добавить -v к вашей команде mex, чтобы увидеть некоторую отладочную информацию: mex -g -v prime.c и давайте посмотрим, какую подробную информацию она выдает.   -  person Shai    schedule 23.11.2013
comment
Спасибо вам за помощь. Я добавил информацию, но она почти такая же, как и раньше.   -  person f. c.    schedule 23.11.2013
comment
когда mex -setup что ты выбрал? какой компилятор вы используете на какой машине?   -  person Shai    schedule 23.11.2013
comment
У меня есть только 1 вариант, когда mex -setup 1: /Applications/MATLAB_R2013a.app/bin/mexopts.sh, и я использую Mac OS X 10.7.   -  person f. c.    schedule 24.11.2013
comment
У меня недавно была аналогичная проблема. Это действительно раздражает, потому что я не могу создать какой-либо файл mex C. Кто-нибудь может помочь?   -  person zell    schedule 24.11.2013


Ответы (1)


Вероятно, файл mex уже вызывался каким-либо экземпляром Matlab. В этом случае очистите все переменные в каждом экземпляре с помощью команды «очистить все» и повторите попытку. Кроме того, какой-то другой процесс вашей операционной системы может блокировать файл MEX. Попробуйте выяснить, кто блокирует этот файл, и разблокируйте его.

person Geovany A. Borges    schedule 23.04.2020