2016-10-24 15 views
0

Я установил MatConvNet из VLFeat, и я пытаюсь его скомпилировать. Но, как я пытаюсь запустить vl_compilenn он показывает следующее сообщение об ошибке:Ошибка Matconvnet cl.exe не найден

vl_compilenn 
Warning: CL.EXE not found in PATH. Trying to guess out of mex setup. 
> In vl_compilenn>check_clpath (line 580) 
    In vl_compilenn (line 413) 
'cl.exe' is not recognized as an internal or external command, 
operable program or batch file. 
Error using vl_compilenn>check_clpath (line 591) 
Unable to find cl.exe 

Error in vl_compilenn (line 413) 
    check_clpath(); % check whether cl.exe in path 

ответ

0

cl.exe является ++ компилятор C.

Это сообщение означает, что программа не может найти этот файл на вашем компьютере (либо потому, что это на самом деле не существует, или потому что вы не указали свое местоположение.)

Если у вас действительно есть C++ компилятор и работать с Windows, перейдите к свойствам вашего ПК -> расширенные настройки -> Переменные среды (Извините, если имена не точны, мой компьютер находится на французском языке, но должен быть чем-то подобным ...). Здесь у вас будет поле под названием PATH с наиболее вероятными уже установленными путями. Измените его, добавив путь к вам, компилятор C++ (папка, содержащая cl.exe), и перезагрузите компьютер (ваше изменение не учитывается в противном случае).

Я не знаю, как это сделать для других ОС ...

В противном случае, вам нужно загрузить ++ компилятор C. Visual Studio является бесплатной и имеет один.

+0

Я уже пробовал это . У меня есть TDM Gcc-4.9 MinGw64bit, и я добавил путь к переменным среды. Но ошибка все еще наступает. Я изменил строку 415-418 на следующий код – user7029552

+1

ase {'win64'} flags.nvccpass {end + 1} = '-Xcompiler/MD'; % cl_path = fileparts (check_clpath()); % проверяет, является ли cl.exe по пути flags.nvccpass {end + 1} = '-ccbin "C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ VC \ bin \ x86_amd64"'; end – user7029552

+0

На самом деле вам не нужно полностью перезагружаться, вы можете просто перезапустить matlab –

0

К сожалению, MatConvNet не поддерживает компилятор MinGW в текущей версии. В Windows вам необходимо установить Microsoft Visual Studio. В настоящее время вы можете бесплатно скачать бесплатную версию сообщества. here.

Одна из причин, почему MatConvNet не поддерживает MinGW, заключается в том, что в Windows она использует библиотеку GDI + для ускорения чтения файлов изображений. Вы можете попробовать скомпилировать его с помощью: vl_compilenn('EnableImreadJpeg', false)

+0

Привет, я установил флаг EnableImreadJpeg в false, как вы сказали, но все еще не смог скомпилировать :( –

1

установить Visual Studio Community Edition (это бесплатная версия) (minwg компилятор не будет работать) перейти к C: \ Program Files (x86) \ Microsoft Visual Studio поиск cl.exe взять один подходит для вашей архитектуры компьютера и скопировать его в папку, содержащую установочном matconvnet запустить MEX -setup C++ и установить его в визуальной студии , и вы хорошо идти