在centos 7.4上安装Vowpal Wabbit

时间:2018-01-09 07:49:22

标签: centos vowpalwabbit

我正在尝试在centos 7.4上安装Vowpal Wabbit。获取代码并运行命令make后,最后我得到错误 -

inter -DNDEBUG -std=gnu++11 -MT vwdll.lo -MD -MP -MF .deps/vwdll.Tpo -c vwdll.cpp  -fPIC -DPIC -o .libs/vwdll.o
vwdll.cpp:2:19: fatal error: codecvt: No such file or directory
#include <codecvt>
               ^
compilation terminated.
make[2]: *** [vwdll.lo] Error 1
make[2]: Leaving directory `/home/user/vowpal_wabbit/vowpalwabbit'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/user/vowpal_wabbit/vowpalwabbit'
make: *** [all-recursive] Error 1

谁能告诉我如何安装vowpal wabbit?

以下是安装说明的github链接 - https://github.com/JohnLangford/vowpal_wabbit

2 个答案:

答案 0 :(得分:1)

CentOS 7中的默认编译器是gcc 4.8,它仍然没有完整的C ++ 11支持,包括&lt; codecvt&gt;标题,因此您需要安装并使用较新的gcc版本。

但如果由于某种原因你不能,那么好消息是&lt; codecvt&gt;是您可能不需要的其中一个辅助库所必需的。

在这种情况下,您可以继续只构建VW二进制文件:

cd vowpalwabbit
make vw

答案 1 :(得分:0)

花了相当长的时间解决相关问题后,我得以使vw在CentOS 7 Docker上运行。这是我采取的步骤:

在开始之前,如果您已经安装了CentOS的gcc-c++软件包, 卸载它。

  1. 使用更新的g ++安装更新的开发人员工具集:

    yum -y install centos-release-scl 
    yum -y install  devtoolset-6
    /usr/bin/scl enable devtoolset-6 true
    
  2. 安装Boost库和相关库:

    yum -y install boost-devel.x86_64 libboost-all-dev \ 
           libboost-program-options-dev
    
  3. 如果缺少JDK,请安装:

    yum -y java-1.7.0-openjdk java-1.7.0-openjdk-deve
    
  4. 将较新的g ++链接到通常由“ gcc-c ++”占用的路径:

    ln -s /opt/rh/devtoolset-6/root/usr/bin/g++ /usr/bin/g++
    
  5. Git克隆并构建:

    git clone https://github.com/JohnLangford/vowpal_wabbit.git
    cd vowpa_wabbit
    ./autogen.sh
    ./configure
    make
    make install  
    
  6. 现在,您可以使用vw二进制文件通过其terminal interface.访问vowpal_wabbit,您可能希望添加export PATH=/usr/local/bin:$PATH以便能够从整体上使用vw。

感谢Linux叔叔:https://ashokharnal.wordpress.com/2015/02/20/install-vowpal-wabbit-on-centos-machine/