关于matlab安装Visual Studio 2010编译器的问题

时间:2021-06-03 06:44:25

环境:32位电脑,matlab2012b,Visual Studio 2010

             真的是自己瞎折腾,关于matlab安装Visual Studio 2010编译器的问题搞了两天多了,终于弄出来了,要哭了~~~~~

            之前装的是Visual Studio 2012,然后用matlab编译的时候就出问题了,刚开始时搜不到装的Visual Studio 2012,然后网上找了各种教程,试了各种方法(我是学渣- -也不             知道哪种方法对),后来可以搜到Visual Studio 2012了,但是安装还是出错,然后继续网上找各种教程,试来试去还是不行,好吧我放弃了。。。然后装回了Visual         Studio 2010,然后编译的时候就成功了= =对!!一下子就成功了,所以我刚开始说我是在折腾!所以如果你的matlab是2012b,还是乖乖去下个低点版本的Visual Studio 吧,比如Visual Studio 2010

接下来才是正题,安装好编译器之后,然后就是编译LibSVM函数库。具体做法见下:

1. 网上下载好LibSVM函数库

2.打开matlab,路径为libsvm\matlab ,输入部分我用高亮标出

>> mex -setup
 
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/R2012b/win32.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) 
[2] Intel C++ 12.0 (with Microsoft Visual C++ 2008 SP1 linker) 
[3] Intel C++ 12.0 (with Microsoft Visual C++ 2010 linker) 
[4] Intel C++ 11.1 (with Microsoft Visual C++ 2008 SP1 linker) 
[5] Intel Visual Fortran 12 (with Microsoft Software Development Kit (SDK) linker) 
[6] Intel Visual Fortran 12.0 (with Microsoft Visual C++ 2008 SP1 linker) 
[7] Intel Visual Fortran 12.0 (with Microsoft Visual C++ 2008 Shell linker) 
[8] Intel Visual Fortran 12.0 (with Microsoft Visual C++ 2010 linker) 
[9] Intel Visual Fortran 11.1 (with Microsoft Visual C++ 2008 SP1 linker) 
[10] Intel Visual Fortran 11.1 (with Microsoft Visual C++ 2008 Shell linker) 
[11] Lcc-win32 C 2.4.1 
[12] Microsoft Software Development Kit (SDK) 7.1 
[13] Microsoft Visual C++ 2005 SP1 
[14] Microsoft Visual C++ 2008 SP1 
[15] Microsoft Visual C++ 2010 
[16] Microsoft Visual C++ 2012 
[17] Open WATCOM C++ 
 
[0] None 
 
Compiler: 15   (这里选择的是我刚刚装的编译器)
 
Your machine has a Microsoft Visual C++ 2010 compiler located at 
d:\安装文件\Visual Studio 2010\. Do you want to use this compiler [y]/n? (回车)
 
Please verify your choices: 
 
Compiler: Microsoft Visual C++ 2010  
Location: d:\安装文件\Visual Studio 2010\ 
 
Are these correct [y]/n? (回车)
 
*************************************************************************** 
  Warning: MEX-files generated using Microsoft Visual C++ 2010 require 
           that Microsoft Visual Studio 2010 run-time libraries be  
           available on the computer they are run on. 
           If you plan to redistribute your MEX-files to other MATLAB 
           users, be sure that they have the run-time libraries. 
*************************************************************************** 
 
 
Trying to update options file: C:\Users\Administrator\AppData\Roaming\MathWorks\MATLAB\R2012b\mexopts.bat 
From template:              D:\MATLAB~1\bin\win32\mexopts\msvc100opts.bat 
 
Done . . . 
 
************************************************************************** 
  Warning: The MATLAB C and Fortran API has changed to support MATLAB 
           variables with more than 2^32-1 elements.  In the near future 
           you will be required to update your code to utilize the new 
           API. You can find more information about this at: 
           http://www.mathworks.com/help/techdoc/matlab_external/bsflnue-1.html 
           Building with the -largeArrayDims option enables the new API. 
************************************************************************** 
 
>> make

然后发现这个文件夹中多出来了四个文件,分别是libsvmread.mexw32  libsvmwrite.mexw32  svmpredict.mexw32  svmtrain.mexw32

这样就编译好了!(终于啊!!泪奔)