Adapting Deployer ComponentPath to system installation directories

Hi folks,

I was quite disapointed when I tryed to use the library I installed in /usr/local/lib/rtt/gnulinux/plugins. The ComponentPath of my deployer apps was fiwed to /usr/lib and could not be modified when kick-starting a .xml file.

The solution I have used is to modify the Deployer compilation: adding a

add_definitions(-D DEPLOYER_COMPONENT_PATH=\\"${OROCOS_RTT_LINK_DIRS}\\")

in the deployer CMakeLists.txt, and using the macro DEPLOYER_COMPONENT_PATH in ComponentPath construction (DeploymentComponent.cpp, line 76) resolve the problem!

I know loads KDL toolkits and my own toolkits directly when starting the deployer!

Hope this tips will help people, and give some idea to 2.0 developpers ;)

Charles.

Adapting Deployer ComponentPath to system installation directori

On Aug 8, 2009, at 09:36 , charles [dot] lesire [..] ... wrote:

> Hi folks,
>
> I was quite disapointed when I tryed to use the library I installed
> in /usr/local/lib/rtt/gnulinux/plugins. The ComponentPath of my
> deployer apps was fiwed to /usr/lib and could not be modified when
> kick-starting a .xml file.
>
> The solution I have used is to modify the Deployer compilation:
> adding a
>
> add_definitions(-D DEPLOYER_COMPONENT_PATH=\\"${OROCOS_RTT_LINK_DIRS}
> \\")
>
> in the deployer CMakeLists.txt, and using the macro
> DEPLOYER_COMPONENT_PATH in ComponentPath construction
> (DeploymentComponent.cpp, line 76) resolve the problem!
>
> I know loads KDL toolkits and my own toolkits directly when starting
> the deployer!
>
> Hope this tips will help people, and give some idea to 2.0
> developpers ;)
>
> Charles.

There is a way to do this without modifying the Deployer. This topic
has come up before, trust me. Peter added I think a way to get an XML
file into the deployer that configures the deployer, IIRC, including
the above path.

We just use the ldconfig mechanism on Linux, or DYLD_LIBRARY_PATH on
the Mac, and specify the toolkits explicitly in our XML file like this

   <simple name="Import" type="string">
     <value>liborocos-kdl</value>
   </simple>
   <simple name="Import" type="string">
      <value>liborocos-kdltk</value>
   </simple>
   <simple name="Import" type="string">
    <value>liborocos-kdltk-corba</value>
   </simple>


Search the forums, I know this has been addressed in other manners.

HTH
Stephen