regression on master for orogen + xenomai on Lucid (only)

All lights are green on Hudson, except when building an orogen task
with the xenomai target, which I test on a Lucid system. The cmake
output looks like this:

+++ Running case: 03-OroGenBuild
+++ working dir:
/home/virtual/hudson/workspace/bootstrap-toolchain/CORBA_IMPL/TAO/TARGET/xenomai/arch/amd64/branch/master/orocos-toolchain/testorogen/build
+++ command: make
| Scanning dependencies of target check-typekit-uptodate
| [ 4%] Built target check-typekit-uptodate
| Scanning dependencies of target check-uptodate
| [ 9%] Built target check-uptodate
| Scanning dependencies of target testorogen-typekit-xenomai
| [ 14%] Building CXX object
.orogen/typekit/CMakeFiles/testorogen-typekit-xenomai.dir/Plugin.cpp.o
| [ 19%] Building CXX object
.orogen/typekit/CMakeFiles/testorogen-typekit-xenomai.dir/type_info/__std__string___testorogen__Task_STATES.cpp.o
| Linking CXX shared library libtestorogen-typekit-xenomai.so
| [ 19%] Built target testorogen-typekit-xenomai
| Scanning dependencies of target testorogen-tasks-xenomai
| [ 23%] Building CXX object
tasks/CMakeFiles/testorogen-tasks-xenomai.dir/__/.orogen/tasks/TaskBase.cpp.o
| [ 28%] Building CXX object
tasks/CMakeFiles/testorogen-tasks-xenomai.dir/Task.cpp.o
| [ 33%] Building CXX object
tasks/CMakeFiles/testorogen-tasks-xenomai.dir/__/.orogen/tasks/DeployerComponent.cpp.o
| Linking CXX shared library libtestorogen-tasks-xenomai.so
| [ 33%] Built target testorogen-tasks-xenomai
| Scanning dependencies of target testorogen-transport-typelib-xenomai
| [ 38%] Building CXX object
.orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/__std__string___testorogen__Task_STATES.cpp.o
| [ 42%] Building CXX object
.orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/bool_boost__int32_t.cpp.o
| [ 47%] Building CXX object
.orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/boost__int8_t_boost__uint32_t.cpp.o
| [ 52%] Building CXX object
.orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/double_float.cpp.o
| [ 57%] Building CXX object
.orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/TransportPlugin.cpp.o
| Linking CXX shared library libtestorogen-transport-typelib-xenomai.so
| [ 57%] Built target testorogen-transport-typelib-xenomai
| Scanning dependencies of target testorogen-transport-mqueue-xenomai
| [ 61%] Building CXX object
.orogen/typekit/transports/mqueue/CMakeFiles/testorogen-transport-mqueue-xenomai.dir/TransportPlugin.cpp.o
| [ 66%] Building CXX object
.orogen/typekit/transports/mqueue/CMakeFiles/testorogen-transport-mqueue-xenomai.dir/__std__string___testorogen__Task_STATES.cpp.o
| Linking CXX shared library libtestorogen-transport-mqueue-xenomai.so
| [ 66%] Built target testorogen-transport-mqueue-xenomai
| [ 71%] Generating testorogenTypesC.cpp
| TAO_IDL: warning, GPERF could not be executed
| Perfect Hashing or Binary/Linear Search cannot be done without GPERF
| Now, using Dynamic Hashing..
| To use Perfect Hashing or Binary/Linear Search strategy
| -Build gperf at $ACE_ROOT/apps/gperf/src
| -Set the environment variable $ACE_ROOT appropriately or add
$ACE_ROOT/bin to the PATH
| -Refer to Operation Lookup section in the TAO IDL User Guide
($TAO_ROOT/docs/compiler.html) for more details
| processing /home/virtual/hudson/workspace/bootstrap-toolchain/CORBA_IMPL/TAO/TARGET/xenomai/arch/amd64/branch/master/orocos-toolchain/testorogen/.orogen/typekit/transports/corba/testorogenTypes.idl
| Scanning dependencies of target testorogen-transport-corba-xenomai
| [ 76%] Building CXX object
.orogen/typekit/transports/corba/CMakeFiles/testorogen-transport-corba-xenomai.dir/Convertions.cpp.o
| [ 80%] Building CXX object
.orogen/typekit/transports/corba/CMakeFiles/testorogen-transport-corba-xenomai.dir/TransportPlugin.cpp.o
| [ 85%] Building CXX object
.orogen/typekit/transports/corba/CMakeFiles/testorogen-transport-corba-xenomai.dir/__std__string___testorogen__Task_STATES.cpp.o
| [ 90%] Building CXX object
.orogen/typekit/transports/corba/CMakeFiles/testorogen-transport-corba-xenomai.dir/testorogenTypesC.cpp.o
| Linking CXX shared library libtestorogen-transport-corba-xenomai.so
| [ 90%] Built target testorogen-transport-corba-xenomai
| Scanning dependencies of target orogen_default_testorogen__Task
| [ 95%] Building CXX object
CMakeFiles/orogen_default_testorogen__Task.dir/.orogen/main-orogen_default_testorogen__Task.cpp.o
| Linking CXX executable orogen_default_testorogen__Task
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'CORBA::Any::~Any()'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'operator>>=(CORBA::Any const&, char
const*&)'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'CORBA::Any::Any()'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'operator<<=(CORBA::Any&, char const*)'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'CORBA::Any_var::operator=(CORBA::Any*)'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'vtable for CORBA::TypeCode'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'vtable for TAO::TypeCode::Enum<char
const*, char const* const*, TAO::Null_RefCount_Policy>'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'CORBA::TypeCode::~TypeCode()'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'CORBA::Any::replace(TAO::Any_Impl*)'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'CORBA::Any::_tao_get_typecode() const'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to
'CORBA::TypeCode::equivalent(CORBA::TypeCode*) const'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'TAO::Any_Impl::encoded() const'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'typeinfo for TAO::Any_Impl'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'typeinfo for TAO::Unknown_IDL_Type'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'TAO::Any_Impl::Any_Impl(void
(*)(void*), CORBA::TypeCode*, bool)'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'TAO::Any_Impl::~Any_Impl()'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'TAO::Any_Impl::free_value()'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'TAO::Any_Impl::_tao_byte_order() const'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'TAO::Any_Impl::_add_ref()'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to 'TAO::Any_Impl::_remove_ref()'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to
'TAO::Any_Impl::to_object(CORBA::Object*&) const'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to
'TAO::Any_Impl::to_value(CORBA::ValueBase*&) const'
| /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
error: undefined reference to
'TAO::Any_Impl::to_abstract_base(CORBA::AbstractBase*&) const'
| collect2: ld returned 1 exit status
| make[2]: *** [orogen_default_testorogen__Task] Error 1
| make[1]: *** [CMakeFiles/orogen_default_testorogen__Task.dir/all] Error 2
| make: *** [all] Error 2
+++ exit code: 2

Similar errors for omniorb (Any and typecode symbols missing). Both
builds do link with omniorb or TAO libraries.

This might be Lucid specific...instead of Xenomai specific.

Peter

regression on master for orogen + xenomai on Lucid (only)

Could it be the same problem i had with gcc 4.7 ?

https://fedoraproject.org/wiki/Features/ChangeInImplicitDSOLinking
https://fedoraproject.org/wiki/UnderstandingDSOLinkChange

See bug 979 : http://orocos.org/forum/rtt/rtt-dev/bug-979-new-add-taskcontext-factory-...

Paul.

On 10/11/2012 11:15 AM, Peter Soetens wrote:
> All lights are green on Hudson, except when building an orogen task
> with the xenomai target, which I test on a Lucid system. The cmake
> output looks like this:
>
> +++ Running case: 03-OroGenBuild
> +++ working dir:
> /home/virtual/hudson/workspace/bootstrap-toolchain/CORBA_IMPL/TAO/TARGET/xenomai/arch/amd64/branch/master/orocos-toolchain/testorogen/build
> +++ command: make
> | Scanning dependencies of target check-typekit-uptodate
> | [ 4%] Built target check-typekit-uptodate
> | Scanning dependencies of target check-uptodate
> | [ 9%] Built target check-uptodate
> | Scanning dependencies of target testorogen-typekit-xenomai
> | [ 14%] Building CXX object
> .orogen/typekit/CMakeFiles/testorogen-typekit-xenomai.dir/Plugin.cpp.o
> | [ 19%] Building CXX object
> .orogen/typekit/CMakeFiles/testorogen-typekit-xenomai.dir/type_info/__std__string___testorogen__Task_STATES.cpp.o
> | Linking CXX shared library libtestorogen-typekit-xenomai.so
> | [ 19%] Built target testorogen-typekit-xenomai
> | Scanning dependencies of target testorogen-tasks-xenomai
> | [ 23%] Building CXX object
> tasks/CMakeFiles/testorogen-tasks-xenomai.dir/__/.orogen/tasks/TaskBase.cpp.o
> | [ 28%] Building CXX object
> tasks/CMakeFiles/testorogen-tasks-xenomai.dir/Task.cpp.o
> | [ 33%] Building CXX object
> tasks/CMakeFiles/testorogen-tasks-xenomai.dir/__/.orogen/tasks/DeployerComponent.cpp.o
> | Linking CXX shared library libtestorogen-tasks-xenomai.so
> | [ 33%] Built target testorogen-tasks-xenomai
> | Scanning dependencies of target testorogen-transport-typelib-xenomai
> | [ 38%] Building CXX object
> .orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/__std__string___testorogen__Task_STATES.cpp.o
> | [ 42%] Building CXX object
> .orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/bool_boost__int32_t.cpp.o
> | [ 47%] Building CXX object
> .orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/boost__int8_t_boost__uint32_t.cpp.o
> | [ 52%] Building CXX object
> .orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/double_float.cpp.o
> | [ 57%] Building CXX object
> .orogen/typekit/transports/typelib/CMakeFiles/testorogen-transport-typelib-xenomai.dir/TransportPlugin.cpp.o
> | Linking CXX shared library libtestorogen-transport-typelib-xenomai.so
> | [ 57%] Built target testorogen-transport-typelib-xenomai
> | Scanning dependencies of target testorogen-transport-mqueue-xenomai
> | [ 61%] Building CXX object
> .orogen/typekit/transports/mqueue/CMakeFiles/testorogen-transport-mqueue-xenomai.dir/TransportPlugin.cpp.o
> | [ 66%] Building CXX object
> .orogen/typekit/transports/mqueue/CMakeFiles/testorogen-transport-mqueue-xenomai.dir/__std__string___testorogen__Task_STATES.cpp.o
> | Linking CXX shared library libtestorogen-transport-mqueue-xenomai.so
> | [ 66%] Built target testorogen-transport-mqueue-xenomai
> | [ 71%] Generating testorogenTypesC.cpp
> | TAO_IDL: warning, GPERF could not be executed
> | Perfect Hashing or Binary/Linear Search cannot be done without GPERF
> | Now, using Dynamic Hashing..
> | To use Perfect Hashing or Binary/Linear Search strategy
> | -Build gperf at $ACE_ROOT/apps/gperf/src
> | -Set the environment variable $ACE_ROOT appropriately or add
> $ACE_ROOT/bin to the PATH
> | -Refer to Operation Lookup section in the TAO IDL User Guide
> ($TAO_ROOT/docs/compiler.html) for more details
> | processing /home/virtual/hudson/workspace/bootstrap-toolchain/CORBA_IMPL/TAO/TARGET/xenomai/arch/amd64/branch/master/orocos-toolchain/testorogen/.orogen/typekit/transports/corba/testorogenTypes.idl
> | Scanning dependencies of target testorogen-transport-corba-xenomai
> | [ 76%] Building CXX object
> .orogen/typekit/transports/corba/CMakeFiles/testorogen-transport-corba-xenomai.dir/Convertions.cpp.o
> | [ 80%] Building CXX object
> .orogen/typekit/transports/corba/CMakeFiles/testorogen-transport-corba-xenomai.dir/TransportPlugin.cpp.o
> | [ 85%] Building CXX object
> .orogen/typekit/transports/corba/CMakeFiles/testorogen-transport-corba-xenomai.dir/__std__string___testorogen__Task_STATES.cpp.o
> | [ 90%] Building CXX object
> .orogen/typekit/transports/corba/CMakeFiles/testorogen-transport-corba-xenomai.dir/testorogenTypesC.cpp.o
> | Linking CXX shared library libtestorogen-transport-corba-xenomai.so
> | [ 90%] Built target testorogen-transport-corba-xenomai
> | Scanning dependencies of target orogen_default_testorogen__Task
> | [ 95%] Building CXX object
> CMakeFiles/orogen_default_testorogen__Task.dir/.orogen/main-orogen_default_testorogen__Task.cpp.o
> | Linking CXX executable orogen_default_testorogen__Task
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'CORBA::Any::~Any()'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'operator>>=(CORBA::Any const&, char
> const*&)'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'CORBA::Any::Any()'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'operator<<=(CORBA::Any&, char const*)'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'CORBA::Any_var::operator=(CORBA::Any*)'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'vtable for CORBA::TypeCode'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'vtable for TAO::TypeCode::Enum<char
> const*, char const* const*, TAO::Null_RefCount_Policy>'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'CORBA::TypeCode::~TypeCode()'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'CORBA::Any::replace(TAO::Any_Impl*)'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'CORBA::Any::_tao_get_typecode() const'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to
> 'CORBA::TypeCode::equivalent(CORBA::TypeCode*) const'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'TAO::Any_Impl::encoded() const'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'typeinfo for TAO::Any_Impl'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'typeinfo for TAO::Unknown_IDL_Type'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'TAO::Any_Impl::Any_Impl(void
> (*)(void*), CORBA::TypeCode*, bool)'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'TAO::Any_Impl::~Any_Impl()'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'TAO::Any_Impl::free_value()'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'TAO::Any_Impl::_tao_byte_order() const'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'TAO::Any_Impl::_add_ref()'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to 'TAO::Any_Impl::_remove_ref()'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to
> 'TAO::Any_Impl::to_object(CORBA::Object*&) const'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to
> 'TAO::Any_Impl::to_value(CORBA::ValueBase*&) const'
> | /usr/bin/ld: .orogen/typekit/transports/corba/libtestorogen-transport-corba-xenomai.so:
> error: undefined reference to
> 'TAO::Any_Impl::to_abstract_base(CORBA::AbstractBase*&) const'
> | collect2: ld returned 1 exit status
> | make[2]: *** [orogen_default_testorogen__Task] Error 1
> | make[1]: *** [CMakeFiles/orogen_default_testorogen__Task.dir/all] Error 2
> | make: *** [all] Error 2
> +++ exit code: 2
>
> Similar errors for omniorb (Any and typecode symbols missing). Both
> builds do link with omniorb or TAO libraries.
>
> This might be Lucid specific...instead of Xenomai specific.
>
> Peter
>

regression on master for orogen + xenomai on Lucid (only)

On 10/11/2012 11:15 AM, Peter Soetens wrote:
> Similar errors for omniorb (Any and typecode symbols missing). Both
> builds do link with omniorb or TAO libraries.
>
> This might be Lucid specific...instead of Xenomai specific.
Both omniorb and tao are split in little pieces. Maybe that on the
lucid's versions one need to link to a specific library ...