[ Warning][DeploymentComponent::loadLibrary] Component type name ... already used: overriding.

Hello,

When I start up the deployer, I get a warning : [ Warning][DeploymentComponent::loadLibrary] Component type name ... already used: overriding. in my logging. Although the load of the dynamic library is only done once in the .cpf file. What can be the reason for this warning ?

Stefaan

[ Warning][DeploymentComponent::loadLibrary]

Problem is solved you don't have to look at it any more

Problem loading a component library : Component type name alread

Hi all,

I have a little problem when loading a multi component library of my own.
it says :
23.898 [ Warning][DeploymentComponent::import] Component type name
arp_hml::CanOpenController already used: overriding.
Whereas a "displayComponentTypes" command before this doesn't show it.

Is there anything wrong in my code ? I am quite sure I only have one
ORO_CREATE_COMPONENT( arp_hml::CanOpenController)

I don't know how to investigate this.
I am using
root@beta(8.2):~# rosrun ocl deployer-gnulinux --version
OROCOS Toolchain version '2.5.0' ( GCC 4.4.5 ) -- GNU/Linux.

Here is the complete log in the TaskBrowser:

Deployer [S]> displayComponentTypes
I can create the following component types:
OCL::ConsoleReporting
OCL::FileReporting
OCL::HMIConsoleOutput
OCL::HelloWorld
OCL::LuaComponent
OCL::LuaTLSFComponent
OCL::TcpReporting
OCL::TimerComponent
OCL::logging::Appender
OCL::logging::FileAppender
OCL::logging::Log4cxxAppender
OCL::logging::LoggingService
OCL::logging::OstreamAppender
TaskContext
arp_core::Monitor
arp_core::SqlBridge
= (void)

Deployer [S]> import("arp_hml")
23.898 [ Warning][DeploymentComponent::import] Component type name
arp_hml::CanOpenController already used: overriding.
= true

Deployer [S]> displayComponentTypes
I can create the following component types:
OCL::ConsoleReporting
OCL::FileReporting
OCL::HMIConsoleOutput
OCL::HelloWorld
OCL::LuaComponent
OCL::LuaTLSFComponent
OCL::TcpReporting
OCL::TimerComponent
OCL::logging::Appender
OCL::logging::FileAppender
OCL::logging::Log4cxxAppender
OCL::logging::LoggingService
OCL::logging::OstreamAppender
TaskContext
Test
arp_core::Monitor
arp_core::SqlBridge
arp_hml::CanOpenController
arp_hml::DefaultJoystick
arp_hml::Faulhaber3268Bx4
arp_hml::GamepadPS1
arp_hml::LogitechExtreme3D
arp_hml::UbiquityItf
arp_hml::UbiquitySimul
arp_hml::WoodheadIn
arp_hml::WoodheadOut
= (void)

Deployer [S]>

Here is what appears in the log :
4.429 [ Info ][DeploymentComponent::import] Importing directory
/opt/ros_addons/rtt_ros_integration/rtt_rosnode/lib/orocos/gnulinux ...
4.429 [ Info ][DeploymentComponent::import] Loading typekit libraries
from directory
/opt/ros_addons/rtt_ros_integration/rtt_rosnode/lib/orocos/gnulinux/types
...
4.553 [ Info ][TypekitRepository::Import] Loading Typekit ros-primitives.
4.554 [ Info ][TypekitRepository::Import] TypeInfo for type 'int32'
already exists as 'int': I'll alias the original and install the new
instance.
4.554 [ Info ][TypekitRepository::Import] TypeInfo for type 'int32[]'
already exists as 'ints': I'll alias the original and install the new
instance.
4.555 [ Info ][TypekitRepository::Import] TypeInfo for type 'uint32'
already exists as 'uint': I'll alias the original and install the new
instance.
4.555 [ Info ][TypekitRepository::Import] TypeInfo for type 'float32'
already exists as 'float': I'll alias the original and install the new
instance.
4.555 [ Info ][TypekitRepository::Import] TypeInfo for type 'float64'
already exists as 'double': I'll alias the original and install the new
instance.
4.556 [ Info ][TypekitRepository::Import] TypeInfo for type 'float64[]'
already exists as 'array': I'll alias the original and install the new
instance.
4.556 [ Info ][TypekitRepository::Import] Registered new 'CORBA'
transport for string
4.556 [ Info ][TypekitRepository::Import] TypeInfo for type 'string[]'
already exists as 'strings': I'll alias the original and install the new
instance.
4.556 [ Info ][DeploymentComponent::import] Loaded RTT TypeKit/Transport
'ros-primitives' from 'rtt-ros-primitives-typekit'
4.557 [ Info ][DeploymentComponent::import] Loading plugin libraries from
directory
/opt/ros_addons/rtt_ros_integration/rtt_rosnode/lib/orocos/gnulinux/plugins
...
4.565 [ Info ][DeploymentComponent::import] Loaded RTT Service 'rosparam'
from 'rtt_rosparam_service'
4.578 [ Info ][DeploymentComponent::import] Initializing ROS node
4.604 [ Info ][DeploymentComponent::import] ROS node spinner started
4.604 [ Info ][DeploymentComponent::import] Loaded RTT Service
'ros_integration' from 'rtt_rosnode'
4.606 [ Info ][DeploymentComponent::import] Importing directory
/opt/ros_addons/rtt_ros_comm/rtt_std_msgs/lib/orocos/gnulinux ...
4.606 [ Info ][DeploymentComponent::import] Loading typekit libraries
from directory
/opt/ros_addons/rtt_ros_comm/rtt_std_msgs/lib/orocos/gnulinux/types ...
5.403 [ Info ][TypekitRepository::Import] Loading Typekit ros-std_msgs.
5.408 [ Info ][DeploymentComponent::import] Loaded RTT TypeKit/Transport
'ros-std_msgs' from 'rtt-std_msgs-typekit'
5.531 [ Info ][TypekitRepository::Import] Loading Transport
ros://ros-std_msgs.
5.531 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Bool
5.531 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Byte
5.531 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/ByteMultiArray
5.531 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Char
5.531 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/ColorRGBA
5.531 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Duration
5.532 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Empty
5.532 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Float32
5.532 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Float32MultiArray
5.532 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Float64
5.532 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Float64MultiArray
5.532 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Header
5.532 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Int16
5.532 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Int16MultiArray
5.532 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Int32
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Int32MultiArray
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Int64
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Int64MultiArray
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Int8
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Int8MultiArray
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/MultiArrayDimension
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/MultiArrayLayout
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/String
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/Time
5.533 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/UInt16
5.534 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/UInt16MultiArray
5.534 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/UInt32
5.534 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/UInt32MultiArray
5.534 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/UInt64
5.534 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/UInt64MultiArray
5.534 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/UInt8
5.534 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /std_msgs/UInt8MultiArray
5.535 [ Info ][DeploymentComponent::import] Loaded RTT TypeKit/Transport
'rtt-ros-std_msgs-transport' from 'rtt-std_msgs-ros-transport'
5.537 [ Info ][DeploymentComponent::import] Importing directory
/opt/ros_addons/rtt_ros_comm/rtt_rosgraph_msgs/lib/orocos/gnulinux ...
5.537 [ Info ][DeploymentComponent::import] Loading typekit libraries
from directory
/opt/ros_addons/rtt_ros_comm/rtt_rosgraph_msgs/lib/orocos/gnulinux/types ...
5.549 [ Info ][TypekitRepository::Import] Loading Transport
ros://ros-rosgraph_msgs.
5.549 [ Info ][DeploymentComponent::import] Loaded RTT TypeKit/Transport
'rtt-ros-rosgraph_msgs-transport' from 'rtt-rosgraph_msgs-ros-transport'
5.607 [ Info ][TypekitRepository::Import] Loading Typekit
ros-rosgraph_msgs.
5.607 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /rosgraph_msgs/Clock
5.607 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /rosgraph_msgs/Log
5.607 [ Info ][DeploymentComponent::import] Loaded RTT TypeKit/Transport
'ros-rosgraph_msgs' from 'rtt-rosgraph_msgs-typekit'
5.609 [ Info ][DeploymentComponent::import] Importing directory
/opt/ard/rtt_arp_core/lib/orocos/gnulinux ...
5.609 [ Info ][DeploymentComponent::import] Loading typekit libraries
from directory /opt/ard/rtt_arp_core/lib/orocos/gnulinux/types ...
5.649 [ Info ][TypekitRepository::Import] Loading Transport
ros://ros-arp_core.
5.649 [ Info ][DeploymentComponent::import] Loaded RTT TypeKit/Transport
'rtt-ros-arp_core-transport' from 'rtt-arp_core-ros-transport'
5.893 [ Info ][TypekitRepository::Import] Loading Typekit ros-arp_core.
5.894 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /arp_core/Pose
5.894 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /arp_core/Velocity
5.894 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /arp_core/OmniOdo
5.895 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /arp_core/Start
5.895 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /arp_core/Obstacle
5.895 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /arp_core/StartColor
5.895 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /arp_core/DifferentialCommand
5.896 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /arp_core/OmniCommand
5.896 [ Info ][TypekitRepository::Import] Registered new 'ros' transport
for /arp_core/Odo
5.896 [ Info ][DeploymentComponent::import] Loaded RTT TypeKit/Transport
'ros-arp_core' from 'rtt-arp_core-typekit'
5.936 [ Info ][DeploymentComponent::import] Importing directory
/opt/ard/arp_hml/lib/orocos/gnulinux ...
6.025 [ Info ][DeploymentComponent::import] Loaded multi component
library
'/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-joystick-gnulinux.so'
6.038 [ Info ][DeploymentComponent::import] Loaded multi component
library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-mock-gnulinux.so'
6.038 [ Info ][DeploymentComponent::import] Loaded component type 'Test'
6.232 [ Info ][DeploymentComponent::import] Loaded multi component
library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-io-gnulinux.so'
6.232 [ Info ][DeploymentComponent::import] Loaded component type
'arp_hml::CanOpenController'
6.323 [ Info ][DeploymentComponent::import] Loaded multi component
library
'/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-ubiquity-gnulinux.so'
6.429 [ Info ][DeploymentComponent::import] Loaded multi component
library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-motor-gnulinux.so'
6.429 [ Info ][DeploymentComponent::import] Loaded component type
'arp_hml::Faulhaber3268Bx4'
6.436 [ Info ][DeploymentComponent::import] Loaded multi component
library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-can-gnulinux.so'
6.436 [ Warning][DeploymentComponent::import] Component type name
arp_hml::CanOpenController already used: overriding.
6.436 [ Info ][DeploymentComponent::import] Loaded component type
'arp_hml::CanOpenController'
6.437 [ Info ][DeploymentComponent::import] Loading typekit libraries
from directory /opt/ard/arp_hml/lib/orocos/gnulinux/types ...
6.524 [ Info ][TypekitRepository::Import] Loading Typekit HMLTypeKit.
6.524 [ Info ][DeploymentComponent::import] Loaded RTT TypeKit/Transport
'HMLTypeKit' from 'arp_hml-typekit'

Problem loading a component library : Component type name alread

Hi Willy,

On Sat, Jan 7, 2012 at 12:07 AM, Willy Lambert <lambert [dot] willy [..] ...>wrote:

> Hi all,
>
> I have a little problem when loading a multi component library of my own.
> it says :
> 23.898 [ Warning][DeploymentComponent::import] Component type name
> arp_hml::CanOpenController already used: overriding.
> Whereas a "displayComponentTypes" command before this doesn't show it.
>
> Is there anything wrong in my code ? I am quite sure I only have one
> ORO_CREATE_COMPONENT( arp_hml::CanOpenController)
>
> I don't know how to investigate this.
> I am using
> root@beta(8.2):~# rosrun ocl deployer-gnulinux --version
> OROCOS Toolchain version '2.5.0' ( GCC 4.4.5 ) -- GNU/Linux.
>
> ...

> 6.232 [ Info ][DeploymentComponent::import] Loaded multi component
> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-io-gnulinux.so'
> 6.232 [ Info ][DeploymentComponent::import] Loaded component type
> 'arp_hml::CanOpenController'
> 6.323 [ Info ][DeploymentComponent::import] Loaded multi component
> library
> '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-ubiquity-gnulinux.so'
> 6.429 [ Info ][DeploymentComponent::import] Loaded multi component
> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-motor-gnulinux.so'
> 6.429 [ Info ][DeploymentComponent::import] Loaded component type
> 'arp_hml::Faulhaber3268Bx4'
> 6.436 [ Info ][DeploymentComponent::import] Loaded multi component
> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-can-gnulinux.so'
> 6.436 [ Warning][DeploymentComponent::import] Component type name
> arp_hml::CanOpenController already used: overriding.
>

Well, the error is at least consistent. You first defined an
arp_hml::CanOpenController in libarp_hml-io-gnulinux.so and next one
in libarp_hml-can-gnulinux.so.

I guess one links with the other and as such, the component type is seen
twice by the import.

Since you're using multi-component libraries, you're not using
ORO_CREATE_COMPONENT but ORO_LIST_COMPONENT_TYPE.

The only thing we could test for during the import is to see if the address
of the factory function is the same, and then suppress the warning.

Peter

Problem loading a component library : Component type name alread

2012/1/8 Peter Soetens <peter [..] ...>

> Hi Willy,
>
> On Sat, Jan 7, 2012 at 12:07 AM, Willy Lambert <lambert [dot] willy [..] ...>wrote:
>
>> Hi all,
>>
>> I have a little problem when loading a multi component library of my own.
>> it says :
>> 23.898 [ Warning][DeploymentComponent::import] Component type name
>> arp_hml::CanOpenController already used: overriding.
>> Whereas a "displayComponentTypes" command before this doesn't show it.
>>
>> Is there anything wrong in my code ? I am quite sure I only have one
>> ORO_CREATE_COMPONENT( arp_hml::CanOpenController)
>>
>> I don't know how to investigate this.
>> I am using
>> root@beta(8.2):~# rosrun ocl deployer-gnulinux --version
>> OROCOS Toolchain version '2.5.0' ( GCC 4.4.5 ) -- GNU/Linux.
>>
>> ...
>
>> 6.232 [ Info ][DeploymentComponent::import] Loaded multi component
>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-io-gnulinux.so'
>> 6.232 [ Info ][DeploymentComponent::import] Loaded component type
>> 'arp_hml::CanOpenController'
>> 6.323 [ Info ][DeploymentComponent::import] Loaded multi component
>> library
>> '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-ubiquity-gnulinux.so'
>> 6.429 [ Info ][DeploymentComponent::import] Loaded multi component
>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-motor-gnulinux.so'
>> 6.429 [ Info ][DeploymentComponent::import] Loaded component type
>> 'arp_hml::Faulhaber3268Bx4'
>> 6.436 [ Info ][DeploymentComponent::import] Loaded multi component
>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-can-gnulinux.so'
>> 6.436 [ Warning][DeploymentComponent::import] Component type name
>> arp_hml::CanOpenController already used: overriding.
>>
>
> Well, the error is at least consistent. You first defined an
> arp_hml::CanOpenController in libarp_hml-io-gnulinux.so and next one
> in libarp_hml-can-gnulinux.so.
>

Oh, I am working too late, I didn't see this on my own :( sorry

>
> I guess one links with the other and as such, the component type is seen
> twice by the import.
>

Right ! There is a link:
target_link_libraries(arp_hml-io arp_hml-can)

>
> Since you're using multi-component libraries, you're not using
> ORO_CREATE_COMPONENT but ORO_LIST_COMPONENT_TYPE.
>

In fact arp_hml-can has only one component with ORO_CREATE_COMPONENT , and
arp_hml-io has 2 component with the ORO_CREATE_COMPONENT_LIBRARY +
2*ORO_LIST_COMPONENT_TYPE

>
> The only thing we could test for during the import is to see if the
> address of the factory function is the same, and then suppress the warning.
>

Should I do something on my own to suppress my link ? or is it just a "too"
verbose warning in my case ?

Thanks for support.

>
> Peter
>
>

Problem loading a component library : Component type name alread

On Sun, Jan 8, 2012 at 9:54 PM, Willy Lambert <lambert [dot] willy [..] ...>wrote:

>
>
> 2012/1/8 Peter Soetens <peter [..] ...>
>
>> Hi Willy,
>>
>> On Sat, Jan 7, 2012 at 12:07 AM, Willy Lambert <lambert [dot] willy [..] ...>wrote:
>>
>>> Hi all,
>>>
>>> I have a little problem when loading a multi component library of my
>>> own. it says :
>>> 23.898 [ Warning][DeploymentComponent::import] Component type name
>>> arp_hml::CanOpenController already used: overriding.
>>> Whereas a "displayComponentTypes" command before this doesn't show it.
>>>
>>> Is there anything wrong in my code ? I am quite sure I only have one
>>> ORO_CREATE_COMPONENT( arp_hml::CanOpenController)
>>>
>>> I don't know how to investigate this.
>>> I am using
>>> root@beta(8.2):~# rosrun ocl deployer-gnulinux --version
>>> OROCOS Toolchain version '2.5.0' ( GCC 4.4.5 ) -- GNU/Linux.
>>>
>>> ...
>>
>>> 6.232 [ Info ][DeploymentComponent::import] Loaded multi component
>>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-io-gnulinux.so'
>>> 6.232 [ Info ][DeploymentComponent::import] Loaded component type
>>> 'arp_hml::CanOpenController'
>>> 6.323 [ Info ][DeploymentComponent::import] Loaded multi component
>>> library
>>> '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-ubiquity-gnulinux.so'
>>> 6.429 [ Info ][DeploymentComponent::import] Loaded multi component
>>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-motor-gnulinux.so'
>>> 6.429 [ Info ][DeploymentComponent::import] Loaded component type
>>> 'arp_hml::Faulhaber3268Bx4'
>>> 6.436 [ Info ][DeploymentComponent::import] Loaded multi component
>>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-can-gnulinux.so'
>>> 6.436 [ Warning][DeploymentComponent::import] Component type name
>>> arp_hml::CanOpenController already used: overriding.
>>>
>>
>> Well, the error is at least consistent. You first defined an
>> arp_hml::CanOpenController in libarp_hml-io-gnulinux.so and next one
>> in libarp_hml-can-gnulinux.so.
>>
>
> Oh, I am working too late, I didn't see this on my own :( sorry
>
>
>>
>> I guess one links with the other and as such, the component type is seen
>> twice by the import.
>>
>
> Right ! There is a link:
> target_link_libraries(arp_hml-io arp_hml-can)
>
>
>>
>> Since you're using multi-component libraries, you're not using
>> ORO_CREATE_COMPONENT but ORO_LIST_COMPONENT_TYPE.
>>
>
> In fact arp_hml-can has only one component with ORO_CREATE_COMPONENT , and
> arp_hml-io has 2 component with the ORO_CREATE_COMPONENT_LIBRARY +
> 2*ORO_LIST_COMPONENT_TYPE
>

http://orocos.org/stable/documentation/ocl/v2.x/api/html/Component_8hpp....

.. don't mix these two kinds of macros. We might have worked around it in
the deployer such that it works anyway, but you have been warned, it's
untested.

>
>
>>
>> The only thing we could test for during the import is to see if the
>> address of the factory function is the same, and then suppress the warning.
>>
>
> Should I do something on my own to suppress my link ? or is it just a
> "too" verbose warning in my case ?
>

You can't fix this outside the deployer, except fixing your macro issue.

>
> Thanks for support.
>
>
>>
>> Peter
>>
>>
> Peter

Problem loading a component library : Component type name alread

2012/1/8 Peter Soetens <peter [..] ...>

> On Sun, Jan 8, 2012 at 9:54 PM, Willy Lambert <lambert [dot] willy [..] ...>wrote:
>
>>
>>
>> 2012/1/8 Peter Soetens <peter [..] ...>
>>
>>> Hi Willy,
>>>
>>> On Sat, Jan 7, 2012 at 12:07 AM, Willy Lambert <lambert [dot] willy [..] ...>wrote:
>>>
>>>> Hi all,
>>>>
>>>> I have a little problem when loading a multi component library of my
>>>> own. it says :
>>>> 23.898 [ Warning][DeploymentComponent::import] Component type name
>>>> arp_hml::CanOpenController already used: overriding.
>>>> Whereas a "displayComponentTypes" command before this doesn't show it.
>>>>
>>>> Is there anything wrong in my code ? I am quite sure I only have one
>>>> ORO_CREATE_COMPONENT( arp_hml::CanOpenController)
>>>>
>>>> I don't know how to investigate this.
>>>> I am using
>>>> root@beta(8.2):~# rosrun ocl deployer-gnulinux --version
>>>> OROCOS Toolchain version '2.5.0' ( GCC 4.4.5 ) -- GNU/Linux.
>>>>
>>>> ...
>>>
>>>> 6.232 [ Info ][DeploymentComponent::import] Loaded multi component
>>>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-io-gnulinux.so'
>>>> 6.232 [ Info ][DeploymentComponent::import] Loaded component type
>>>> 'arp_hml::CanOpenController'
>>>> 6.323 [ Info ][DeploymentComponent::import] Loaded multi component
>>>> library
>>>> '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-ubiquity-gnulinux.so'
>>>> 6.429 [ Info ][DeploymentComponent::import] Loaded multi component
>>>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-motor-gnulinux.so'
>>>> 6.429 [ Info ][DeploymentComponent::import] Loaded component type
>>>> 'arp_hml::Faulhaber3268Bx4'
>>>> 6.436 [ Info ][DeploymentComponent::import] Loaded multi component
>>>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-can-gnulinux.so'
>>>> 6.436 [ Warning][DeploymentComponent::import] Component type name
>>>> arp_hml::CanOpenController already used: overriding.
>>>>
>>>
>>> Well, the error is at least consistent. You first defined an
>>> arp_hml::CanOpenController in libarp_hml-io-gnulinux.so and next one
>>> in libarp_hml-can-gnulinux.so.
>>>
>>
>> Oh, I am working too late, I didn't see this on my own :( sorry
>>
>>
>>>
>>> I guess one links with the other and as such, the component type is seen
>>> twice by the import.
>>>
>>
>> Right ! There is a link:
>> target_link_libraries(arp_hml-io arp_hml-can)
>>
>>
>>>
>>> Since you're using multi-component libraries, you're not using
>>> ORO_CREATE_COMPONENT but ORO_LIST_COMPONENT_TYPE.
>>>
>>
>> In fact arp_hml-can has only one component with ORO_CREATE_COMPONENT ,
>> and arp_hml-io has 2 component with the ORO_CREATE_COMPONENT_LIBRARY +
>> 2*ORO_LIST_COMPONENT_TYPE
>>
>
>
> http://orocos.org/stable/documentation/ocl/v2.x/api/html/Component_8hpp....
>
>
hum, in fact I never read that before, because I get those macros from
"tutorials", so I have always lived with it. I can then use
ORO_CREATE_COMPONENT_
LIBRARY + ORO_LIST_COMPONENT_TYPE every where ? even for a single component
property, so I don't have my issue ?

> .. don't mix these two kinds of macros. We might have worked around it in
> the deployer such that it works anyway, but you have been warned, it's
> untested.
>
>
>>
>>
>>>
>>> The only thing we could test for during the import is to see if the
>>> address of the factory function is the same, and then suppress the warning.
>>>
>>
>> Should I do something on my own to suppress my link ? or is it just a
>> "too" verbose warning in my case ?
>>
>
> You can't fix this outside the deployer, except fixing your macro issue.
>
>
>>
>> Thanks for support.
>>
>>
>>>
>>> Peter
>>>
>>>
>> Peter
>
>
>

Problem loading a component library : Component type name alread

On Mon, Jan 9, 2012 at 11:55 AM, Willy Lambert <lambert [dot] willy [..] ...>wrote:

>
>
> 2012/1/8 Peter Soetens <peter [..] ...>
>
>> On Sun, Jan 8, 2012 at 9:54 PM, Willy Lambert <lambert [dot] willy [..] ...>wrote:
>>
>>>
>>>
>>> 2012/1/8 Peter Soetens <peter [..] ...>
>>>
>>>> Hi Willy,
>>>>
>>>> On Sat, Jan 7, 2012 at 12:07 AM, Willy Lambert <lambert [dot] willy [..] ...
>>>> > wrote:
>>>>
>>>>> Hi all,
>>>>>
>>>>> I have a little problem when loading a multi component library of my
>>>>> own. it says :
>>>>> 23.898 [ Warning][DeploymentComponent::import] Component type name
>>>>> arp_hml::CanOpenController already used: overriding.
>>>>> Whereas a "displayComponentTypes" command before this doesn't show it.
>>>>>
>>>>> Is there anything wrong in my code ? I am quite sure I only have one
>>>>> ORO_CREATE_COMPONENT( arp_hml::CanOpenController)
>>>>>
>>>>> I don't know how to investigate this.
>>>>> I am using
>>>>> root@beta(8.2):~# rosrun ocl deployer-gnulinux --version
>>>>> OROCOS Toolchain version '2.5.0' ( GCC 4.4.5 ) -- GNU/Linux.
>>>>>
>>>>> ...
>>>>
>>>>> 6.232 [ Info ][DeploymentComponent::import] Loaded multi component
>>>>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-io-gnulinux.so'
>>>>> 6.232 [ Info ][DeploymentComponent::import] Loaded component type
>>>>> 'arp_hml::CanOpenController'
>>>>> 6.323 [ Info ][DeploymentComponent::import] Loaded multi component
>>>>> library
>>>>> '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-ubiquity-gnulinux.so'
>>>>> 6.429 [ Info ][DeploymentComponent::import] Loaded multi component
>>>>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-motor-gnulinux.so'
>>>>> 6.429 [ Info ][DeploymentComponent::import] Loaded component type
>>>>> 'arp_hml::Faulhaber3268Bx4'
>>>>> 6.436 [ Info ][DeploymentComponent::import] Loaded multi component
>>>>> library '/opt/ard/arp_hml/lib/orocos/gnulinux/libarp_hml-can-gnulinux.so'
>>>>> 6.436 [ Warning][DeploymentComponent::import] Component type name
>>>>> arp_hml::CanOpenController already used: overriding.
>>>>>
>>>>
>>>> Well, the error is at least consistent. You first defined an
>>>> arp_hml::CanOpenController in libarp_hml-io-gnulinux.so and next one
>>>> in libarp_hml-can-gnulinux.so.
>>>>
>>>
>>> Oh, I am working too late, I didn't see this on my own :( sorry
>>>
>>>
>>>>
>>>> I guess one links with the other and as such, the component type is
>>>> seen twice by the import.
>>>>
>>>
>>> Right ! There is a link:
>>> target_link_libraries(arp_hml-io arp_hml-can)
>>>
>>>
>>>>
>>>> Since you're using multi-component libraries, you're not using
>>>> ORO_CREATE_COMPONENT but ORO_LIST_COMPONENT_TYPE.
>>>>
>>>
>>> In fact arp_hml-can has only one component with ORO_CREATE_COMPONENT ,
>>> and arp_hml-io has 2 component with the ORO_CREATE_COMPONENT_LIBRARY +
>>> 2*ORO_LIST_COMPONENT_TYPE
>>>
>>
>>
>> http://orocos.org/stable/documentation/ocl/v2.x/api/html/Component_8hpp....
>>
>>
> hum, in fact I never read that before, because I get those macros from
> "tutorials", so I have always lived with it. I can then use
> ORO_CREATE_COMPONENT_
> LIBRARY + ORO_LIST_COMPONENT_TYPE every where ? even for a single
> component property, so I don't have my issue ?
>

Yes. It works for 1 -> N components.

Peter