在MATLAB R2014a上安装LibLinear

时间:2014-07-06 19:22:01

标签: matlab makefile liblinear

我试图在linux上为MATLABR2014a安装LibLinear。在MATLAB中编译时,read.mexa64和write.mexa64创建得很好,它在train.mexa64上失败了。我以前得到的错误是:

/home/admin/Documents/Project/Software/liblinear-1.94/linear.cpp:2739:19: 
warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, 
declared with attribute warn_unused_result [-Wunused-result] fscanf(fp,"\n");               ^

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

所以我整理了linear.cpp中返回值的处理,它仍然失败,只提供指向README的最后一行。我也尝试过安装gcc-4.7,g ++ - 4.7和cpp-4.7但是make过程仍然没有任何信息就终止了。因为它建议我将matlab目录设置为:

MATLABDIR = /usr/local/matlab

我已经包括

-U_FORTIFY_SOURCE 
CFLAGS中的

以防万一被忽略的值引起大惊小怪。我设法从主目录中的命令行编译它并且它工作正常,但是有一个很好的MATLAB界面真是太棒了:)如果有人设法让它运行起来我就是非常感谢任何帮助!

1 个答案:

答案 0 :(得分:3)

如果有人偶然发现了这一点,那么我找到了一种似乎有用的方法。我尝试直接在matlab文件夹中使用Makefile,但一直保持奇怪,因为编译器错误要求更改源目录。但是,如果您进入Makefile并更改行

MEX_OPTION = CC\#$(CXX) CXX\#$(CXX) CFLAGS\#"$(CFLAGS)" CXXFLAGS\#"$(CFLAGS)"

MEX_OPTION = CC=$(CXX) CXX=$(CXX) CFLAGS="$(CFLAGS)" CXXFLAGS="$(CFLAGS)"

它应该有用。