【问题标题】:Installing LibLinear on MATLAB R2014a在 MATLAB R2014a 上安装 LibLinear
【发布时间】:2014-07-07 05:56:03
【问题描述】:

我正在尝试在 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 界面会很棒:) 如果有人设法让它启动并运行,我将非常感谢任何帮助!

【问题讨论】:

    标签: matlab makefile liblinear


    【解决方案1】:

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

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

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

    它应该可以工作。

    【讨论】:

    • 遇到了同样的问题,这确实有效,谢谢
    • 我也遇到了同样的问题,建议的方法有效。
    猜你喜欢
    • 2016-05-19
    • 2012-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-11
    • 2014-02-15
    • 1970-01-01
    • 2013-11-29
    相关资源
    最近更新 更多