在 ubuntu 18.04 LTS [已解决] 中安装 rock-robotics 包时出现问题

problem while installing rock-robotics package in ubuntu 18.04 LTS [SOLVED]

已解决(查看答案)

问题

我已经按照“https://www.rock-robotics.org/documentation/installation.html”中提出的安装指南进行操作。我在安装“rock-robotics”时遇到错误,我最初在我的轻量级发行版“Lubuntu”中尝试过,现在我'我正在尝试“Ubuntu 18.04 LTS”,但它又发生了,我对此很着迷,问题是我需要这个包来开发我的学位论文。请在这件事上我需要帮助,最后当我 运行 $sudo sh bootstrap.sh 时你可以看到完整的输出(我尝试了建议的两个引导程序,它们都给了我同样的问题)这里有 错误消息的输出行 :

configuring CMake for base/orogen/std   configured CMake for tools/pocolog_cpp   ERROR: got an error processing base/orogen/std, waiting for pending jobs to end   updated environment Command failed base/orogen/std(/home/emi/rock-robotics/base/orogen/std): failed in configure phase
    'cmake -DCMAKE_INSTALL_PREFIX=/home/emi/rock-robotics/install -DCMAKE_MODULE_PATH= -DCMAKE_PREFIX_PATH=/home/emi/rock-robotics/install;/home/emi/rock-robotics/tools/orogen
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_BUILD_TYPE=Release -DROCK_TEST_ENABLED=OFF /home/emi/rock-robotics/base/orogen/std' returned status 1
    see /home/emi/rock-robotics/install/log/base/orogen/std-configure.log for details
    last 10 lines are:
    -- Checking for module 'orocos-rtt-corba-gnulinux>=2.1.0'
    --   No package 'orocos-rtt-corba-gnulinux' found
    CMake Error at .orogen/config/FindOrocosCORBA.cmake:8 (MESSAGE):
      RTT has not been built with CORBA support
    Call Stack (most recent call first):
      .orogen/typekit/transports/corba/CMakeLists.txt:4 (find_package)
   
   
    -- Configuring incomplete, errors occurred!
    See also "/home/emi/rock-robotics/base/orogen/std/build/CMakeFiles/CMakeOutput.log".

全输出

--2020-06-24 12:02:16--  http://rock-robotics.org/master/autoproj_bootstrap
Resolviendo rock-robotics.org (rock-robotics.org)... 37.17.224.128
Conectando con rock-robotics.org (rock-robotics.org)[37.17.224.128]:80... conectado.
Petición HTTP enviada, esperando respuesta... 301 Moved Permanently
Ubicación: https://rock-robotics.org/master/autoproj_bootstrap [siguiente]
--2020-06-24 12:02:17--  https://rock-robotics.org/master/autoproj_bootstrap
Conectando con rock-robotics.org (rock-robotics.org)[37.17.224.128]:443... conectado.
Petición HTTP enviada, esperando respuesta... 301 Moved Permanently
Ubicación: https://www.rock-robotics.org/master/autoproj_bootstrap [siguiente]
--2020-06-24 12:02:17--  https://www.rock-robotics.org/master/autoproj_bootstrap
Resolviendo www.rock-robotics.org (www.rock-robotics.org)... 185.199.110.153, 185.199.111.153, 185.199.109.153, ...
Conectando con www.rock-robotics.org (www.rock-robotics.org)[185.199.110.153]:443... conectado.
Petición HTTP enviada, esperando respuesta... 200 OK
Longitud: 30078 (29K) [application/octet-stream]
Guardando como: “autoproj_bootstrap”

autoproj_bootstrap  100%[===================>]  29,37K  --.-KB/s    en 0,03s   

2020-06-24 12:02:17 (906 KB/s) - “autoproj_bootstrap” guardado [30078/30078]

Which protocol do you want to use to access rock-core/buildconf.git on github.com? [git|ssh|http] (default: http) 
Detected 'gem' to be /usr/bin/gem2.5
Detected bundler at /home/emi/.local/share/autoproj/gems/ruby/2.5.0/bin/bundle
Installing autoproj in /home/emi/.local/share/autoproj/gems/ruby/2.5.0
Don't run Bundler as root. Bundler can ask for sudo if it is needed, and
installing your bundle as root will break this application for all non-root
users on this machine.
[DEPRECATED] The --binstubs option will be removed in favor of `bundle binstubs`
Fetching gem metadata from https://rubygems.org/......
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies...
Using rake 12.3.3
Using equatable 0.5.0
Using tty-color 0.4.3
Using pastel 0.7.2
Using tty-cursor 0.5.0
Using necromancer 0.4.0
Using timers 4.3.0
Using tty-screen 0.6.5
Using wisper 2.0.1
Using tty-reader 0.2.0
Using tty-prompt 0.15.0
Using facets 3.1.0
Using utilrb 3.0.1
Using autobuild 1.20.0
Using backports 3.18.1
Using bundler 2.1.4
Using concurrent-ruby 1.0.5
Using ffi 1.13.1
Using rb-inotify 0.10.1
Using thor 0.20.3
Using tty-spinner 0.8.0
Using xdg 2.2.5
Using autoproj 2.12.1
Bundle complete! 2 Gemfile dependencies, 23 gems now installed.
Bundled gems are installed into `/home/emi/.local/share/autoproj/gems`
starting the newly installed autoproj for stage2 install
saving temporary env.sh and .autoproj/env.sh
running 'autoproj envsh' to generate a proper env.sh
[DEPRECATED] `Bundler.with_clean_env` has been deprecated in favor of `Bundler.with_unbundled_env`. If you instead want the environment before bundler was originally loaded, use `Bundler.with_original_env` (called at /home/emi/rock-robotics/.autoproj/bin/autoproj:8)
  Which prepackaged software (a.k.a. 'osdeps') should autoproj install automatically (all, none or a comma-separated list of: os gem pip) ?
    The software packages that autoproj will have to build may require other
    prepackaged softwares (a.k.a. OS dependencies) to be installed (RubyGems
    packages, packages from your operating system/distribution, ...). Autoproj
    is able to install those automatically for you.
    
    Advanced users may want to control this behaviour. Additionally, the
    installation of some packages require administration rights, which you may
    not have. This option is meant to allow you to control autoproj's behaviour
    while handling OS dependencies.
    
    * if you say "all", it will install all packages automatically.
      This requires root access thru 'sudo'
    * if you say "pip", only the Python packages will be installed.
      Installing these packages does not require root access.
    * if you say "gem", only the Ruby packages will be installed.
      Installing these packages does not require root access.
    * if you say "os", only the OS-provided packages will be installed.
      Installing these packages requires root access.
    * if you say "none", autoproj will not do anything related to the
      OS dependencies.
    
    Finally, you can provide a comma-separated list of pip gem and os.
    
    As any configuration value, the mode can be changed anytime by calling
      autoproj reconfigure
    
    Finally, the "autoproj osdeps" command will give you the necessary information
    about the OS packages that you will need to install manually.
    
    So, what do you want ? (all, none or a comma-separated list of: os gem pip) [all] 
  Would you like autoproj to keep apt packages up-to-date? [yes] 
  updated environment
running 'autoproj osdeps' to re-install missing gems
[DEPRECATED] `Bundler.with_clean_env` has been deprecated in favor of `Bundler.with_unbundled_env`. If you instead want the environment before bundler was originally loaded, use `Bundler.with_original_env` (called at /home/emi/rock-robotics/.autoproj/bin/autoproj:8)
  updated environment
Command finished successfully at 2020-06-24 12:02:30 +0200 (took 1 sec)
The current directory is not empty, continue bootstrapping anyway ? [yes] 
  checked out autoproj main configuration


autoproj bootstrap successfully finished

To further use autoproj and the installed software, you
must add the following line at the bottom of your .bashrc:
source /home/emi/rock-robotics/env.sh

WARNING: autoproj will not work until your restart all
your consoles, or run the following in them:
$ source /home/emi/rock-robotics/env.sh

To import and build the packages, you can now run
aup
amake

The resulting software is installed in
/home/emi/rock-robotics/install

  How should I interact with github.com (git, http, ssh)
    If you give one value, it's going to be the method used for all access
    If you give multiple values, comma-separated, the first one will be
    used for pulling and the second one for pushing. An optional third value
    will be used to pull from private repositories (the same than pushing is
    used by default) [http,ssh] 
  operating system: ubuntu,debian - 18.04,18.04.4,lts,bionic,beaver
  updating bundler
  updating autoproj
  bundler: connected to https://rubygems.org/
  already up-to-date autoproj main configuration
  checking out git:https://github.com/rock-core/package_set.git interactive=false push_to=git@github.com:/rock-core/package_set.git repository_id=github:/rock-c  checked out git:https://github.com/rock-core/package_set.git interactive=false push_to=git@github.com:/rock-core/package_set.git repository_id=github:/rock-core/package_set.git retry_count=10
  Which flavor of Rock do you want to use ?
    Stay with the default ('master') if you want to use Rock on the most recent
    distributions (Ubuntu 16.04 and later). Use 'stable' only for 
    now officially unsupported distributions (Ubuntu 14.04) [master] 
  Do you want to activate python? [no] 
  checking out git:https://github.com/rock-core/rock-package_set.git interactive=false push_to=git@github.com:/rock-core/rock-package_set.git repository_id=gith  checked out git:https://github.com/rock-core/rock-package_set.git interactive=false push_to=git@github.com:/rock-core/rock-package_set.git repository_id=github:/rock-core/rock-package_set.git retry_count=10
  checking out git:https://github.com/rock-tutorials/tutorials-package_set.git interactive=false push_to=git@github.com:/rock-tutorials/tutorials-package_set.gi  checked out git:https://github.com/rock-tutorials/tutorials-package_set.git interactive=false push_to=git@github.com:/rock-tutorials/tutorials-package_set.git repository_id=github:/rock-tutorials/tutorials-package_set.git retry_count=10
  checking out git:https://github.com/orocos-toolchain/autoproj.git interactive=false push_to=git@github.com:/orocos-toolchain/autoproj.git repository_id=github  checked out git:https://github.com/orocos-toolchain/autoproj.git interactive=false push_to=git@github.com:/orocos-toolchain/autoproj.git repository_id=github:/orocos-toolchain/autoproj.git retry_count=10
  WARN: osdeps definition for cmake, previously defined in /home/emi/.local/share/autoproj/gems/ruby/2.5.0/gems/autoproj-2.12.1/lib/autoproj/default.osdeps overridden by /home/emi/rock-robotics/autoproj/remotes/rock.core/rock.osdeps:
  WARN:   resp. apt-dpkg: cmake
  WARN:         osdep: build-essential
  WARN:   and   apt-dpkg: cmake
  Do you need compatibility with OCL ? (yes or no)
    New Rock users that don't need backward compatibility with legacy Orocos components
    probably want to say 'no'. Otherwise, say 'yes'.
    Saying 'yes' will significantly impact compilation time and the size of the resulting binaries
    Please answer 'yes' or 'no' [no] 
  the target operating system for Orocos/RTT (gnulinux, xenomai, or macosx) [gnulinux] 
  which CORBA implementation should the RTT use ?
    Answer "none" to disable CORBA, otherwise pick either tao or omniorb [omniorb] "none"
invalid value: invalid value '"none"', accepted values are 'none', 'tao', 'omniorb' (without the quotes)
  which CORBA implementation should the RTT use ?
    Answer "none" to disable CORBA, otherwise pick either tao or omniorb [omniorb] none
  checked out base/templates/cmake_vizkit_widget
  checked out base/orogen/std
  checked out base/console_bridge
  checked out base/numeric
  checked out base/logging
  checked out base/templates/bundle
  checked out base/templates/vizkit3d_plugin
  checked out base/templates/ruby_lib
  checked out base/orogen/types
  checked out base/templates/cmake_lib
  checked out base/scripts
  checked out base/cmake
  checked out bundles/rock
  checked out drivers/orogen/aggregator
  checked out bundles/common_models
  checked out drivers/orogen/iodrivers_base
  checked out drivers/aggregator
  checked out drivers/iodrivers_base
  checked out drivers/orogen/transformer
  checked out drivers/transformer
  checked out base/types
  checked out perception/frame_helper
  checked out perception/jpeg_conversion
  checked out gui/osgviz
  checked out tools/log_tools
  checked out gui/rock_webapp
  checked out gui/vizkit3d
  checked out tools/logger
  tools/class_loader: checking out branch indigo-devel
  checked out gui/rock_widget_collection
  checked out tools/class_loader
  checked out tools/orogen_metadata
  checked out gui/vizkit
  checked out tools/pocolog2msgpack
  checked out tools/pocolog_cpp
  checked out tools/pocolog
  checked out tools/telemetry
  checked out base/templates/doc
  checked out tools/rest_api
  checked out rtt_typelib
  checked out utilrb
  checked out tools/orocos.rb
  checked out orogen
  checked out tools/metaruby
  checkout of tools/syskit failed, deleting the source directory /home/emi/rock-robotics/tools/syskit and retrying (1/10)
  checkout of tools/msgpack-c failed, deleting the source directory /home/emi/rock-robotics/tools/msgpack-c and retrying (1/10)
  checked out tools/syskit
  tools/msgpack-c: resetting branch master to 83a82e3eb512b18d4149cabb7eb43c7e8bc081af
  checked out tools/msgpack-c
  WARN: tools/msgpack-c from rock.core does not have a manifest
  checkout of tools/service_discovery failed, deleting the source directory /home/emi/rock-robotics/tools/service_discovery and retrying (1/10)
  checkout of typelib failed, deleting the source directory /home/emi/rock-robotics/tools/typelib and retrying (1/10)
  checkout of tools/roby failed, deleting the source directory /home/emi/rock-robotics/tools/roby and retrying (1/10)
  checkout of external/sisl failed, deleting the source directory /home/emi/rock-robotics/external/sisl and retrying (1/10)
  checked out typelib
  typelib: using the castxml importer
  checked out tools/service_discovery
  checked out external/sisl
  checked out tools/roby
  checkout of rtt failed, deleting the source directory /home/emi/rock-robotics/tools/rtt and retrying (1/10)
  checked out rtt
  building initial autoproj import log, this may take a while
  bundler: connected to https://rubygems.org/
  updated environment
Command finished successfully at 2020-06-24 12:08:47 +0200 (took 6 mins 9 secs)
  bundler: connected to https://rubygems.org/
  updated environment
Command finished successfully at 2020-06-24 12:08:52 +0200 (took 3 secs)
  operating system: ubuntu,debian - 18.04,18.04.4,lts,bionic,beaver
  WARN: osdeps definition for cmake, previously defined in /home/emi/.local/share/autoproj/gems/ruby/2.5.0/gems/autoproj-2.12.1/lib/autoproj/default.osdeps overridden by /home/emi/rock-robotics/autoproj/remotes/rock.core/rock.osdeps:
  WARN:   resp. apt-dpkg: cmake
  WARN:         osdep: build-essential
  WARN:   and   apt-dpkg: cmake
  WARN: tools/msgpack-c from rock.core does not have a manifest
  typelib: using the castxml importer
  configured CMake for tools/msgpack-c
  built tools/msgpack-c
  installed tools/msgpack-c
  configured CMake for rtt
  built rtt (10 warnings)
  set up Ruby package utilrb
  installed rtt
  configured CMake for external/sisl
  set up Ruby package tools/metaruby
  configured CMake for typelib
  set up Ruby package tools/roby
  built typelib (2 warnings)
  set up Ruby package base/scripts
  installed typelib
  built external/sisl (165 warnings)
  set up Ruby package tools/pocolog
  configured CMake for rtt_typelib
  installed external/sisl
  built rtt_typelib
  configured CMake for base/cmake
  installed rtt_typelib
  built base/cmake
  set up Ruby package orogen
  installed base/cmake
  set up Ruby package tools/log_tools
  configured CMake for tools/orogen_metadata
  configured CMake for gui/osgviz
  built tools/orogen_metadata
  configured CMake for base/logging
  built gui/osgviz (6 warnings)
  installed tools/orogen_metadata
  installed gui/osgviz
  built base/logging
  configured CMake for gui/vizkit3d
  built gui/vizkit3d (7 warnings)
  installed base/logging
  installed gui/vizkit3d
  configured CMake for tools/service_discovery
  configured CMake for base/console_bridge
  configured CMake for base/types
  built tools/service_discovery
  installed tools/service_discovery
  built base/types (3 warnings)
  built base/console_bridge
  generated oroGen base/orogen/std
  installed base/types
  installed base/console_bridge
  configuring CMake for base/orogen/std
  configured CMake for tools/pocolog_cpp
  ERROR: got an error processing base/orogen/std, waiting for pending jobs to end
  updated environment
Command failed
base/orogen/std(/home/emi/rock-robotics/base/orogen/std): failed in configure phase
    'cmake -DCMAKE_INSTALL_PREFIX=/home/emi/rock-robotics/install -DCMAKE_MODULE_PATH= -DCMAKE_PREFIX_PATH=/home/emi/rock-robotics/install;/home/emi/rock-robotics/tools/orogen -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_BUILD_TYPE=Release -DROCK_TEST_ENABLED=OFF /home/emi/rock-robotics/base/orogen/std' returned status 1
    see /home/emi/rock-robotics/install/log/base/orogen/std-configure.log for details
    last 10 lines are:

    -- Checking for module 'orocos-rtt-corba-gnulinux>=2.1.0'
    --   No package 'orocos-rtt-corba-gnulinux' found
    CMake Error at .orogen/config/FindOrocosCORBA.cmake:8 (MESSAGE):
      RTT has not been built with CORBA support
    Call Stack (most recent call first):
      .orogen/typekit/transports/corba/CMakeLists.txt:4 (find_package)
    
    
    -- Configuring incomplete, errors occurred!
    See also "/home/emi/rock-robotics/base/orogen/std/build/CMakeFiles/CMakeOutput.log".

最后我在岩石机器人团队的一些建议下解决了它。我又用了一个bootstrap.sh,也接受了corba的支持,完整的过程是:

mkdir rock-workspace
cd rock-workspace
wget https://www.rock-robotics.org/bootstrap.sh
sh bootstrap.sh

然后是引导时关键问题的答案:

Do you need compatibility with OCL ? (yes or no)
New Rock users that don't need backward compatibility with legacy Orocos components
probably want to say 'no'. Otherwise, say 'yes'.
Saying 'yes' will significantly impact compilation time and the size of the resulting binaries
Please answer 'yes' or 'no' [no] no
the target operating system for Orocos/RTT (gnulinux, xenomai, or macosx) [gnulinux] gnulinux
which CORBA implementation should the RTT use ?
Answer "none" to disable CORBA, otherwise pick either tao or omniorb [omniorb] omniorb

所以答案是 gnulinuxomniorb