VLFeat 0.9.20 VS2015
官方上配置vlfeat非常简单,但是实际上发现根本不管用。后来才发现应该是不支持VS2015。
主要参考了:
windows7下 VS2015 编译VLFeat所遇到的问题
VLFeat+MATLAB2016+Vs2015+win10 64bit
MATLAB 尝试将 SCRIPT feature 作为函数执行错误
1、首先去github上下载vlfeat。
2、打开命令窗口,在命令行中依次输入如下图所示的命令。
3、打开nmake_helper.mak,修改
4、修改Makefile.mak
VER = 0.9.20 (vlfeat 版本号)
ARCH = win64 (是64位还是32位,看自己的系统,32位的改win32)
DEBUG = no (用debug 的话 ,改成yes)
BRANCH = v$(VER)-$(ARCH) (我的没有修改这句话)
MSVSVER = (VS版本号,VS2013,填的是120)
MSVCROOT = $(VCINSTALLDIR) (VS 安装路径)
WINSDKROOT = $(WINDOWSSDKDIR) (SDK安装路径)
5、编译,
因为我们根本没有msvcr140.dll文件,只有msvcp140.dll。那么,我们需要讲Makefile.mak文件中所有出现msvcr的地方改成msvcp(注意,只改小写的地方)。
注意要细细查找。用EditPlus查找,发现自动查找会有遗漏。
NMAKE:fatal error U1077: “echo”:返回代码”0x1”
看着终于可以编译了,好开心,但是最后居然出现了这个错误!搞什么搞什么!在google一番之后,送了口气,原来这个错误并不影响编译。
具体请看[这里](http://gubangzhong.cn/Vlfeat%E7%BC%96%E8%AF%91%E6%8C%87%E5%8C%97/)。链接失效了,在我的记忆中,这个错误不影响使用。也就是说,你如果看到了这个错误,那么编译就是成功了。
6、运行vl_setup添加路径。
7、运行vl_compile
但是就这样仍然是出现错误
后来发现,必须把包放到MATLAB/toolbox里面去,才可以。
然后直接可以出结果,一遍过。