ubuntu - ubuntu 14.04 上的 RCSSserver 5.2.2 安装错误

标签 ubuntu makefile configure robocup

经过一天的谷歌搜索和软件包安装,这是我解决 RCSS 安装问题的最后希望。首先让我解释一下我的软件包和版本,因为正如我之前搜索的那样,解决方案是完全基于版本的。

我在华硕笔记本电脑上安装了 ubuntu 14.04 x64 的新副本。安装突触包管理器后,我使用突触或 apt-get 获得了列出的包的最新版本。命令:

  • libaudio-dev*
  • libpng-dev*
  • libxi-dev*
  • libglib2.0-dev*
  • libfontconfig-dev*
  • libxrender-dev*
  • 免费过剩3
  • libltdl*
  • libstdc++*
  • libboost1.54-*
  • libboost 正则表达式*
  • libboost 文件系统*
  • libboost线程*
  • libboost 程序选项*
  • libxaw7
  • 弹性*
  • 野牛*
  • 海合会
  • g++

  • 其中一些是在 RCSS 安装期间要求的,一些建议作为我在下面解释的错误的解决方案。请注意,我将 bison 软件包版本降级到 2.7.1 并保持它不会自动更新,正如其中一个论坛所建议的那样。最后我的问题...
    我下载了 rcssbase-12.1.3、rcssserver-15.2.2 和 rcssmonitor-15.1.1,首先尝试安装 RCSS 服务器,正如手册和一些安装教程线程中提到的那样。我在“cd”到包目录的终端中执行以下命令:
    sudo chmod +x configure
    sudo ./configure --with-boost-libdir=/usr/lib/x86_64-linux-gnu
    

    一切顺利,没有出现错误,我得到以下报告:
    config.status: creating Makefile
    config.status: creating rcssbase/Makefile
    config.status: creating rcssbase/net/Makefile
    config.status: creating rcssbase/conf/Makefile
    config.status: creating rcssbase/gzip/Makefile
    config.status: creating src/Makefile
    config.status: creating src/rcsoccersim
    config.status: creating config.h
    config.status: config.h is unchanged
    config.status: executing depfiles commands
    config.status: executing libtool commands
    

    然后,当我尝试使用“sudo make”命令构建它时,出现以下错误:
    coach_lang_parser.ypp:111:29: error: 'param' was not declared in this scope
     #define BUILDER getBuilder( param )
                                 ^
    coach_lang_parser.ypp:979:9: note: in expansion of macro 'BUILDER'
             BUILDER.buildBallMoveToken( $1.getBMT() );
             ^
    make[3]: *** [coach_lang_parser.lo] Error 1
    make[3]: Leaving directory `/home/alireza/workspace/RCSS/rcssserver-15.2.2/src'
    make[2]: *** [all] Error 2
    make[2]: Leaving directory `/home/alireza/workspace/RCSS/rcssserver-15.2.2/src'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/home/alireza/workspace/RCSS/rcssserver-15.2.2'
    make: *** [all] Error 2
    

    多行文件重复报告有关“参数”的错误,它填满了我的终端缓冲区。在这里,我仅复制有关“参数”的错误行之一。

    经过一番谷歌搜索,建议将野牛库降级到 2.7.1 版,我这样做了,但没有用。然后我发现我必须在安装服务器之前安装RCSSbase。我可以在没有任何错误的情况下执行“./configure”,但再次在“make”过程中我得到以下包含错误的报告:
    make  all-recursive
    make[1]: Entering directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3'
    Making all in .
    make[2]: Entering directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3'
    make[2]: Leaving directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3'
    Making all in libltdl
    make[2]: Entering directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/libltdl'
    make  all-am
    make[3]: Entering directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/libltdl'
    /bin/bash ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.   -I/usr/include  -g -O2 -c -o ltdl.lo ltdl.c
     gcc -DHAVE_CONFIG_H -I. -I/usr/include -g -O2 -c ltdl.c  -fPIC -DPIC -o .libs/ltdl.o
     gcc -DHAVE_CONFIG_H -I. -I/usr/include -g -O2 -c ltdl.c -o ltdl.o >/dev/null 2>&1
    /bin/bash ./libtool --tag=CC   --mode=link gcc  -g -O2  -L/usr/lib/x86_64-linux-gnu -o libltdlc.la  ltdl.lo -ldl 
    rm -fr  .libs/libltdlc.a .libs/libltdlc.la
    ar cru .libs/libltdlc.a .libs/ltdl.o
    ranlib .libs/libltdlc.a
    creating libltdlc.la
    (cd .libs && rm -f libltdlc.la && ln -s ../libltdlc.la libltdlc.la)
    make[3]: Leaving directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/libltdl'
    make[2]: Leaving directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/libltdl'
    Making all in rcssbase
    make[2]: Entering directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/rcssbase'
    Making all in error
    make[3]: Entering directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/rcssbase/error'
    make[3]: Nothing to be done for `all'.
    make[3]: Leaving directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/rcssbase/error'
    Making all in lib
    make[3]: Entering directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/rcssbase/lib'
    Making all in .
    make[4]: Entering directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/rcssbase/lib'
    /bin/bash ../../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../libltdl  -I/usr/include -W -I./src -g -O2 -MT loader.lo -MD -MP -MF .deps/loader.Tpo -c -o loader.lo loader.cpp
     g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../libltdl -I/usr/include -W -I./src -g -O2 -MT loader.lo -MD -MP -MF .deps/loader.Tpo -c loader.cpp  -fPIC -DPIC -o .libs/loader.o
    loader.cpp: In static member function ‘static boost::filesystem::path rcss::lib::Loader::stripDirName(const boost::filesystem::path&)’:
    loader.cpp:158:38: error: conversion from ‘boost::filesystem::path’ to non-scalar type ‘std::string {aka std::basic_string<char>}’ requested
         std::string rval = filename.leaf();
                                          ^
    make[4]: *** [loader.lo] Error 1
    make[4]: Leaving directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/rcssbase/lib'
    make[3]: *** [all-recursive] Error 1
    make[3]: Leaving directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/rcssbase/lib'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/home/alireza/workspace/RCSS/rcssbase-12.1.3/rcssbase'
    

    我知道我的解释比平时更长,但我试图解释所有细节,以免得到与我之前测试过的相同的解决方案。如果有人能解决我的问题,我将不胜感激。我真的需要安装这个服务器。

    最佳答案

    使用“sudo make”构建时出现的错误是由 rcssserver 15 和 bison 3.0.2 之间的不兼容问题引起的。您需要下载、编译和安装bison 2.5.1,然后重试。

    您不需要安装 rcssbase。

    我写了一篇讨论 ubuntu 14.04 here 上的安装问题的帖子.

    关于ubuntu - ubuntu 14.04 上的 RCSSserver 5.2.2 安装错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30990680/

    相关文章:

    Makefile中我们可以在目标行上添加注释吗?

    makefile - 如何打印使用target_compile_options()设置的当前编译标志?

    configure - qucs 核心 : configure error needs admsxml

    Ubuntu 12.10 libgtk-3-0 缺少符号

    c - 如何通过makefile包含头文件

    debugging - 编译gdb以进行远程调试

    linux - 在不安装包的情况下预览手册页

    c# - 单声道:无法加载文件或程序集 'System.Threading.Tasks.Dataflow'

    php - 如何运行我所有的 PHPUnit 测试?

    ubuntu - Pyinstaller:找不到路径或 glob "/usr/include/python3.4m/pyconfig.h"或不匹配任何文件。”