libsvm 安装配置详解 VS2012+MatlabR2012b+Win7




Visual Studio 64位(默认路径安装)  Win7 64  MATLAB R2012b关于编译器选择编译问题解决方案(实践通过)

libsvm包下载:
http://www.csie.ntu.edu.tw/~cjlin/libsvm/

 

视屏讲解:
http://v.youku.com/v_show/id_XMjc2NTY3MzYw.html
by faruto @ faruto's Studio~ http://blog.sina.com.cn/farutohttp://www.matlabsky.com

 

摘要总结
1
)设置路径,将下载包中的matlab文件夹按照matlab软件 File-> Set Path ->Add With Subfolder将路径设置为可检索路径
2
)选择编译器(mex -setup),这里选取VS2012,如果没发现编译器,可参考http://download.csdn.net/detail/wiills/4621079   网页上的内容,有详细描述。

3)编译,将matlab的当前目录调整到..\libsvm-3.17\matlab,在命令窗口输入make,如果编译完成目录中会多出 libsvmread.mexw64libsvmwrite.mexw64svmpredict.mexw64 svmtrain.mexw64等文件。

 

其他问题
如果编译报错,如
LINK : fatal error LNK1181:
无法打开输入文件“kernel32.lib”
D:\PROGRA~2\MATLAB\R2012B\BIN\MEX.PL: Error: Link of 'libsvmread.mexw64'

failed.
If make.m fails, please check README about detailed instructions.

原因是找不到 C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x64\kernel32.Lib文件。

 

解决方法

修改 msvc110opts.bat文件(http://download.csdn.net/detail/wiills/4621079  CSDN,连接附件中有,如果下载不了可在评论中留下邮箱!):

 

@echo off
rem MSVC110OPTS.BAT
rem
rem    Compile and link options used for building MEX-files
rem    using the Microsoft Visual C++ compiler version 11.0
rem
rem    $Revision: 1.1.6.4.2.1 $  $Date: 2012/07/12 13:53:59 $
rem    Copyright 2007-2009 The MathWorks, Inc.
rem
rem StorageVersion: 1.0
rem C++keyFileName: MSVC100OPTS.BAT
rem C++keyName: Microsoft Visual C++ 2012
rem C++keyManufacturer: Microsoft
rem C++keyVersion: 11.0
rem C++keyLanguage: C++
rem C++keyLinkerName: Microsoft Visual C++ 2012
rem C++keyLinkerVersion: 11.0
rem
rem ********************************************************************
rem General parameters
rem ********************************************************************

set MATLAB=%MATLAB%
set VSINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio 11.0
set VCINSTALLDIR=%VSINSTALLDIR%\VC
rem In this case, LINKERDIR is being used to specify the location of the SDK
 rem set LINKERDIR='.registry_lookup("SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.0A" , "InstallationFolder").'
set LINKERDIR=C:\Program Files (x86)\Windows Kits\8.0\
set PATH=%VCINSTALLDIR%\bin\amd64;%VCINSTALLDIR%\bin;%VCINSTALLDIR%\VCPackages;%VSINSTALLDIR%\Common7\IDE;%VSINSTALLDIR%\Common7\Tools;%LINKERDIR%\bin\x64;%MATLAB_BIN%;%PATH%
set INCLUDE=%VCINSTALLDIR%\INCLUDE;%VCINSTALLDIR%\ATLMFC\INCLUDE;%INCLUDE%
set LIB=%VCINSTALLDIR%\LIB\amd64;%VCINSTALLDIR%\ATLMFC\LIB\amd64;%MATLAB%\extern\lib\win64;C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x64;%LIB%
set MW_TARGET_ARCH=win64


matlab在关联编译器的时候 会出现找不到编译器的问题 原因是matlab要找windows sdk的mt exe 本文件修改方法也是根据wiills的那篇“matlab找不到编译器的问题”(matlab无法找到vs2012)的修改方法进行的 请参考:http: download csdn net download wiills 4621079 本次修改如下说明: 1 本次为:Matlab版本为Matlab 2013b(64bit版本)无法关联visual studio 2013编译器的解决方法 2 相对于wiills的修改来说 使用读注册表的方法(不删除添加任何语句 只是修改) 而不是使用绝对路径给出地址 理论上讲如果VS2013的安装路径不是默认的 只要版本对的话把这些文件添加进相对性的目录也是可以关联的 3 使用方法 复制wiills的说明了 哈哈 : 1 把附件相关的5个文件添加到matlab bin win64下面的2个相关目录 2 在matlab 里面运行 mbuild setup 然后选 y 再选择2013的那个项目 再选y 3 这是应该成功了 4 mex setup也是一样的 如果是Matlab 2013b 32位版本的可以复制出matlab bin win64两个相关目录下(mexopts目录下的:msvc110opts stp msvc110opts bat msvc110engmatopts bat和mbuildopts目录下的:msvc110compp bat msvc110compp stp)这五个文件 VS2012的支持文件 对照本文下面给出方法自行修改即可 ">matlab在关联编译器的时候 会出现找不到编译器的问题 原因是matlab要找windows sdk的mt exe 本文件修改方法也是根据wiills的那篇“matlab找不到编译器的问题”(matlab无法找到vs2012)的修改方法进行的 请参考:http: download csdn net downlo [更多]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值