настройка mex для Matlab

У меня возникли проблемы с настройкой mex в плане выбора компилятора. Я пытался установить Windows SDK 7.1, но каждый раз это не удавалось. Согласно ЭТОМУ форум, это потому, что у меня установлена ​​​​визуальная студия 10.0 (что я и делаю). Так что в идеале я должен иметь возможность настроить mex с помощью этого компилятора. Но когда я пытаюсь, я получаю следующую ошибку:

Welcome to mex -setup.  This utility will help you set up  
a default compiler.  For a list of supported compilers, see  
http://www.mathworks.com/support/compilers/R2012a/win64.html 

Please choose your compiler for building MEX-files: 

Would you like mex to locate installed compilers [y]/n? n

Select a compiler: 
[1] Intel C++ 12.0 (with Microsoft Software Development Kit (SDK) linker) 
...
[14] Microsoft Visual C++ 2010 

[0] None 

Compiler: 14

Warning: The default location for Microsoft Visual C++ 2010 compiler is: 
     "C:\Program Files (x86)\Microsoft Visual Studio 10.0" 
     but either that directory does not exist or the configuration 
     is invalid. 

***************************************************************************** 
  Error: Microsoft Visual C++ 2010 requires the Microsoft Windows Software  
     Development Kit (SDK), but the SDK cannot be found.  Examine your   
     Microsoft Visual C++ 2010 installation. 
***************************************************************************** 

Error using mex (line 206)
Unable to complete successfully.

Так что, очевидно, мне нужен SDK??? Я несколько раз пытался удалить SDK 7.1 из Microsoft, но безуспешно.

Я подумал, что, может быть, мне нужно вручную указать mex глубже в файловой системе Visual Studio, чтобы найти компилятор, какие-нибудь идеи по этому поводу?

Я использую Windows 7 64 бит с Matlab R2012a.

Спасибо за вашу помощь.


person Fantastic Mr Fox    schedule 03.06.2013    source источник
comment
Вы используете 64-разрядную версию MATLAB с экспресс-версией Visual Studio? Редакции Express не поставляются с 64-битным компилятором (хотя, возможно, именно поэтому вы пытаетесь установить SDK?). Кроме того, в этой теме есть много информации об этой ошибке. .   -  person wakjah    schedule 03.06.2013
comment
Пожалуйста, просмотрите ссылку, кроме пунктов, упомянутых @wakjah   -  person Sridutt    schedule 03.06.2013
comment
если вы ответите «да» y, он должен показать список обнаруженных компиляторов в вашей системе, которые поддерживаются вашей версией MATLAB. Ответ no просто возвращает полный список всех компиляторов (установленных и не установленных). Если у вас версия VS2010 Professional, то она должна включать 64-битные компиляторы по умолчанию (если вы специально не отключили их во время установки). Вам нужен только SDK для версии Express   -  person Amro    schedule 03.06.2013


Ответы (1)


Я не знаю причину этого, но я так понял.

  1. Удалите все версии распространяемого пакета Microsoft Visual C++ со своего компьютера.
  2. Установите обновление компилятора Microsoft Visual C++ 2010 с пакетом обновления 1 (SP1) для Windows SDK 7.1 отсюда: https://www.microsoft.com/en-in/download/details.aspx?id=4422
  3. Попробуйте mex-setup еще раз.
person chandan    schedule 17.11.2016