come from
:http://www.ilovematlab.cn/viewthread.php?tid=103156&sid=2cjG8K
各位常用MATLAB的朋友都知道64位系统下matalb内存管理性能要优秀的多,基本不会出现由于内存碎片导致的 out
of memory错误,但是在64位系统中,很多人都与我一样发现会出现找不到编译器的错误,哪怕完全按照官方要求装了VS2005,以及其中的64bit
compiler and tool。同样这个问题也困扰了我很久,导致无法编译生成libsvm的.mexw64文件。
包括参考这篇文章手动指定安装目录,但是无效!随后我又重新测试了 速成班
VS2005 VS2010等不同版本,甚至重装MATLAB,都均告失败。
最后本人决定今天决定一行行代码调试,将其问题找出!
艰巨的工程由此开始:
从MATLAB开始
mex -setup 的调用跟踪为
mex.m -> mexhelper ->
line 52 :errCode = dos([ cmd ' -' computer('arch') ]);
cmd 内容为
cmd =
"D:\Program
Files\MATLAB\R2007b\sys\perl\win32\bin\perl.exe" "D:\Program
Files\MATLAB\R2007b\bin\mex.pl"
@"D:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\tp255a6f