MATLAB Answers

0

libsvm problem in make function with windows7 (64 bit)

Asked by besbesmany besbesmany on 29 Aug 2011
Latest activity Commented on by sudhakar singh on 24 May 2019
i tried to run libsvm several times but i failed, i've visualc++
i do this
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/R2011a/win64.html
Please choose your compiler for building MEX-files:
Would you like mex to locate installed compilers [y]/n? y
Select a compiler:
[1] Microsoft Visual C++ 2010 Express in C:\Program Files (x86)\Microsoft Visual Studio 10.0
[0] None
Compiler: 1
Please verify your choices:
Compiler: Microsoft Visual C++ 2010 Express
Location: C:\Program Files (x86)\Microsoft Visual Studio 10.0
Are these correct [y]/n? y
***************************************************************************
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\Mero\AppData\Roaming\MathWorks\MATLAB\R2011a\mexopts.bat
From template: D:\PROGRA~2\MATLAB\R2011a\bin\win64\mexopts\msvc100freeopts.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/support/solutions/en/data/1-5C27B9/?solution=1-5C27B9
Building with the -largeArrayDims option enables the new API.
**************************************************************************
>> make
D:\PROGRA~2\MATLAB\R2011A\BIN\MEX.PL: Error: '..\svm.cpp' not found.
??? Error using ==> mex at 208
Unable to complete successfully.
Error in ==> make at 5
mex -O -largeArrayDims -I..\ -c ..\svm.cpp
the problem in make , it doesn't work at all , i don't know what to do to make libsvm toolbox work
please help me

  0 Comments

Sign in to comment.

Tags

4 Answers

Answer by Alok Mani on 14 Apr 2019

You will have to edit the file 'make.m'. Replace all the 'CFLAGS' with 'COMFLAGS'. Worked for me right.

  1 Comment

Sign in to comment.


Answer by Walter Roberson
on 30 Aug 2011

I notice you are running MATLAB 64. When you installed the compilers, did you specifically install "X64 Compilers and Tools" from Microsoft? Those require a separate step after installing the basic compiler. The link about "supported compilers" gives more information about what you need.
Secondly, the tools believe that svm.cpp should be in the directory immediately above the one you are compiling from, but cannot find it there. Which directory are you compiling in, and how does it relate to the directory that svm.cpp is in? You sometimes need to be cd'd to the source directory itself to be able to "make" the code properly.

  4 Comments

Show 1 older comment
What do yo get when you execute the following from the MATLAB prompt:
>> cd
>> !cd
You need to do a "custom install" on the VC+++ 2010 express
http://msdn.microsoft.com/en-us/library/ms246588%28v=vs.80%29.aspx
You might also need to follow the instructions below, but I haven't seen anyone mention them before:
http://msdn.microsoft.com/en-us/library/9yb4317s%28v=vs.80%29.aspx
I would not add either of those directories to the MATLAB path to start with: I would cd to the second of them and run "make" there and not try to continue until after it had said that it had built the library. Once the library was built, then I would add the path to it to the MATLAB path and proceed on the development of whatever it was you wanted to use libsvm for.
Dear Kaustubha
i got the following
>> cd
D:\Program Files\MATLAB\R2011a\toolbox\libsvm-3.1\matlab
>> !cd
D:\Program Files\MATLAB\R2011a\toolbox\libsvm-3.1\matlab
Dear Walter Roberson
thier is no custom install for VC++ 2010 experess
the link http://msdn.microsoft.com/en-us/library/ms246588%28v=vs.80%29.aspx
is for visual studio 2005
for link
http://msdn.microsoft.com/en-us/library/9yb4317s%28v=vs.80%29.aspx
i tried to change the Configuration Manager to 64-bit platform , but this step for project inside VC++ and have no relation with matlab
i tried after that to run "make" in matlab but i got the same error
>> make
D:\PROGRA~2\MATLAB\R2011A\BIN\MEX.PL: Error: '..\svm.cpp' not found.
??? Error using ==> mex at 208
Unable to complete successfully.
Error in ==> make at 5
mex -O -largeArrayDims -I..\ -c ..\svm.cpp
what i can do now , i don't know what is the problem , is thiere any missing sw i should install or missing step to run libsvm
please help
thanks

Sign in to comment.


Answer by besbesmany besbesmany on 6 Sep 2011

it works now , i think the error because i didn't add this folder to the matlab path
D:\Program Files\MATLAB\R2011a\toolbox\libsvm-3.1\windows
thanks all

  0 Comments

Sign in to comment.


Answer by pankaj behera on 19 Jan 2018
Edited by Walter Roberson
on 24 Jan 2018

i am using Matlab R2017a in windows 10 version in my comuter.while trying to use LIBSVM package i am facing issues like make.m file when run showing error
make
Building with 'MinGW64 Compiler (C)'.
Error: C:\Users\PANKAJ\Desktop\libsvm-3.22\libsvm-3.22\matlab\make.m failed (line 13)
gcc: error: \-fexceptions: No such file or directory
please suggest me the solutions(i have tried changing CFLAGS to COMPFLAGS but it does not work)

  0 Comments

Sign in to comment.