When building BaseTypes, make fails with "Cannot require 'typelib'"
Full error message:
-- [UseOrocos] Generating typekit for BaseTypes ...
Cannot require 'typelib'
If you are using Rock, the 'typelib' package should have been installed automatically.
First, make sure that you have loaded autoproj's env.sh script before continuing
Second, typelib should be installed in tools/typelib from the root of your Rock installation.
If it is not the case, report this to the rock developers. To workaround, run
amake typelib
and try again.
CMake Error at /app/orocos/install/lib/cmake/orocos-rtt/UseOROCOS-RTT.cmake:560 (add_subdirectory):
add_subdirectory given source "/app/topcore/BaseTypes/build/typekit" which
is not an existing directory.
Call Stack (most recent call first):
CMakeLists.txt:34 (orocos_typegen_headers)
-- Configuring incomplete, errors occurred!
After some detective work, this is caused by:
- the ruby script
orogen/lib/orogen.rb
includes ('requires')typelib.rb
, but cannot find it -
typelib.rb
actually lies ininstall/lib/ruby/2.3.0
- ruby searches files outside the standard paths via the environment variable
RUBYLIB
(include paths can be displayed viaruby -e 'puts $:'
) - the
env.sh
script should setRUBYLIB
correctly (the correct path is in there at least for me), but this somehow works only sporadically.
@Maximilian.ernestus, @michael.flossmann, @saniea.akhtar, could you please post the output when you do the following.
Thanks!
Edit: I found out more:
- The correct
RUBYLIB
expression was not always inenv.sh
. Another run of./bootstrap.sh
apparently downloaded another version ofenv.sh
which works. - Open question is still how to reliably get the correct
env.sh