missing libraries of installed ocl

I thought this used to work:

1. built and installed rtt into /home/mk/tmp/rtt-<version> ($RTT_PATH)

2. built ocl against it and installed it to /home/mk/tmp/ocl-<version> ($TGT)
like this:

$ unset ROS_ROOT
$ cmake . -DCMAKE_INSTALL_PREFIX=$TGT -DCMAKE_PREFIX_PATH=$RTT_PATH -DOROCOS-RTT_DIR=$RTT_PATH
$ make
$ make install

cd $TGT/bin
PMA-10-048 ~/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin $ ldd deployer-gnulinux

linux-vdso.so.1 => (0x00007fff90dfc000)
liborocos-rtt-gnulinux.so.2.1 => not found
liborocos-taskbrowser-gnulinux.so => not found
liborocos-deployment-gnulinux.so => not found
libboost_program_options.so.1.42.0 => /usr/lib/libboost_program_options.so.1.42.0 (0x00007ff957094000)
libboost_filesystem.so.1.42.0 => /usr/lib/libboost_filesystem.so.1.42.0 (0x00007ff956e80000)
libboost_system.so.1.42.0 => /usr/lib/libboost_system.so.1.42.0 (0x00007ff956c7c000)

Various libraries are not found. During install I also get messages like

-- Installing:
/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinux.so
-- Set runtime path of
"/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinux.so" to "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib:/home/mk/tmp/rtt/rtt-v2.1.1-125-g8734a9e/lib:/home/mk/tmp/rtt/rtt-v2.1.1-125-g8734a9e/lib/orocos/plugins"
-- Installing: /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/include/ocl/DeploymentComponent.hpp
-- Installing: /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux
-- Removed runtime path from "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux"
-- Installing: /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/orocos/liborocos-lua-gnulinux.so

Is there any way I can avoid setting the paths manually?

Thanks
Markus

missing libraries of installed ocl

On Tuesday 07 December 2010 09:46:19 Markus Klotzbuecher wrote:
> I thought this used to work:
>
> 1. built and installed rtt into /home/mk/tmp/rtt-<version> ($RTT_PATH)
>
> 2. built ocl against it and installed it to /home/mk/tmp/ocl-<version>
> ($TGT) like this:
>
>
> $ unset ROS_ROOT
> $ cmake . -DCMAKE_INSTALL_PREFIX=$TGT -DCMAKE_PREFIX_PATH=$RTT_PATH
> -DOROCOS-RTT_DIR=$RTT_PATH $ make
> $ make install
>
> cd $TGT/bin
> PMA-10-048 ~/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin $ ldd deployer-gnulinux
>
> linux-vdso.so.1 => (0x00007fff90dfc000)
> liborocos-rtt-gnulinux.so.2.1 => not found
> liborocos-taskbrowser-gnulinux.so => not found
> liborocos-deployment-gnulinux.so => not found
> libboost_program_options.so.1.42.0 =>
> /usr/lib/libboost_program_options.so.1.42.0 (0x00007ff957094000)
> libboost_filesystem.so.1.42.0 => /usr/lib/libboost_filesystem.so.1.42.0
> (0x00007ff956e80000) libboost_system.so.1.42.0 =>
> /usr/lib/libboost_system.so.1.42.0 (0x00007ff956c7c000)
>
> Various libraries are not found. During install I also get messages like
>
> -- Installing:
>
> /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinux
> .so -- Set runtime path of
>
> "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinu
> x.so" to
> "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib:/home/mk/tmp/rtt/rtt-v2.1.1-
> 125-g8734a9e/lib:/home/mk/tmp/rtt/rtt-v2.1.1-125-g8734a9e/lib/orocos/plugin
> s" -- Installing:
> /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/include/ocl/DeploymentComponent.h
> pp -- Installing:
> /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux -- Removed
> runtime path from
> "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux" --
> Installing:
> /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/orocos/liborocos-lua-gnulinux
> .so
>
> Is there any way I can avoid setting the paths manually?

The cleanup of the cmake files removed the 'rpath' settings for executables. I
have re-added them. See the patch in attachment.

Peter

missing libraries of installed ocl

On Tue, Dec 07, 2010 at 10:41:07AM +0100, Peter Soetens wrote:
> On Tuesday 07 December 2010 09:46:19 Markus Klotzbuecher wrote:
> > I thought this used to work:
> >
> > 1. built and installed rtt into /home/mk/tmp/rtt-<version> ($RTT_PATH)
> >
> > 2. built ocl against it and installed it to /home/mk/tmp/ocl-<version>
> > ($TGT) like this:
> >
> >
> > $ unset ROS_ROOT
> > $ cmake . -DCMAKE_INSTALL_PREFIX=$TGT -DCMAKE_PREFIX_PATH=$RTT_PATH
> > -DOROCOS-RTT_DIR=$RTT_PATH $ make
> > $ make install
> >
> > cd $TGT/bin
> > PMA-10-048 ~/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin $ ldd deployer-gnulinux
> >
> > linux-vdso.so.1 => (0x00007fff90dfc000)
> > liborocos-rtt-gnulinux.so.2.1 => not found
> > liborocos-taskbrowser-gnulinux.so => not found
> > liborocos-deployment-gnulinux.so => not found
> > libboost_program_options.so.1.42.0 =>
> > /usr/lib/libboost_program_options.so.1.42.0 (0x00007ff957094000)
> > libboost_filesystem.so.1.42.0 => /usr/lib/libboost_filesystem.so.1.42.0
> > (0x00007ff956e80000) libboost_system.so.1.42.0 =>
> > /usr/lib/libboost_system.so.1.42.0 (0x00007ff956c7c000)
> >
> > Various libraries are not found. During install I also get messages like
> >
> > -- Installing:
> >
> > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinux
> > .so -- Set runtime path of
> >
> > "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinu
> > x.so" to
> > "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib:/home/mk/tmp/rtt/rtt-v2.1.1-
> > 125-g8734a9e/lib:/home/mk/tmp/rtt/rtt-v2.1.1-125-g8734a9e/lib/orocos/plugin
> > s" -- Installing:
> > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/include/ocl/DeploymentComponent.h
> > pp -- Installing:
> > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux -- Removed
> > runtime path from
> > "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux" --
> > Installing:
> > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/orocos/liborocos-lua-gnulinux
> > .so
> >
> > Is there any way I can avoid setting the paths manually?
>
> The cleanup of the cmake files removed the 'rpath' settings for executables. I
> have re-added them. See the patch in attachment.

I can confirm the patch fixes the problem.

Thanks
Markus

missing libraries of installed ocl

On Tuesday 07 December 2010 09:46:19 Markus Klotzbuecher wrote:
> I thought this used to work:
>
> 1. built and installed rtt into /home/mk/tmp/rtt-<version> ($RTT_PATH)
>
> 2. built ocl against it and installed it to /home/mk/tmp/ocl-<version>
> ($TGT) like this:
>
>
> $ unset ROS_ROOT
> $ cmake . -DCMAKE_INSTALL_PREFIX=$TGT -DCMAKE_PREFIX_PATH=$RTT_PATH
> -DOROCOS-RTT_DIR=$RTT_PATH $ make
> $ make install
>
> cd $TGT/bin
> PMA-10-048 ~/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin $ ldd deployer-gnulinux
>
> linux-vdso.so.1 => (0x00007fff90dfc000)
> liborocos-rtt-gnulinux.so.2.1 => not found
> liborocos-taskbrowser-gnulinux.so => not found
> liborocos-deployment-gnulinux.so => not found
> libboost_program_options.so.1.42.0 =>
> /usr/lib/libboost_program_options.so.1.42.0 (0x00007ff957094000)
> libboost_filesystem.so.1.42.0 => /usr/lib/libboost_filesystem.so.1.42.0
> (0x00007ff956e80000) libboost_system.so.1.42.0 =>
> /usr/lib/libboost_system.so.1.42.0 (0x00007ff956c7c000)
>
> Various libraries are not found. During install I also get messages like
>
> -- Installing:
>
> /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinux
> .so -- Set runtime path of
>
> "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinu
> x.so" to
> "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib:/home/mk/tmp/rtt/rtt-v2.1.1-
> 125-g8734a9e/lib:/home/mk/tmp/rtt/rtt-v2.1.1-125-g8734a9e/lib/orocos/plugin
> s" -- Installing:
> /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/include/ocl/DeploymentComponent.h
> pp -- Installing:
> /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux -- Removed
> runtime path from
> "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux" --
> Installing:
> /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/orocos/liborocos-lua-gnulinux
> .so
>
> Is there any way I can avoid setting the paths manually?

If there are issues, these must be fixed in the UseOrocos.cmake macros, since
these are the only ones we use.

Did you source 'env.sh' ?

Peter

missing libraries of installed ocl

On Tue, Dec 07, 2010 at 10:25:13AM +0100, Peter Soetens wrote:
> On Tuesday 07 December 2010 09:46:19 Markus Klotzbuecher wrote:
> > I thought this used to work:
> >
> > 1. built and installed rtt into /home/mk/tmp/rtt-<version> ($RTT_PATH)
> >
> > 2. built ocl against it and installed it to /home/mk/tmp/ocl-<version>
> > ($TGT) like this:
> >
> >
> > $ unset ROS_ROOT
> > $ cmake . -DCMAKE_INSTALL_PREFIX=$TGT -DCMAKE_PREFIX_PATH=$RTT_PATH
> > -DOROCOS-RTT_DIR=$RTT_PATH $ make
> > $ make install
> >
> > cd $TGT/bin
> > PMA-10-048 ~/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin $ ldd deployer-gnulinux
> >
> > linux-vdso.so.1 => (0x00007fff90dfc000)
> > liborocos-rtt-gnulinux.so.2.1 => not found
> > liborocos-taskbrowser-gnulinux.so => not found
> > liborocos-deployment-gnulinux.so => not found
> > libboost_program_options.so.1.42.0 =>
> > /usr/lib/libboost_program_options.so.1.42.0 (0x00007ff957094000)
> > libboost_filesystem.so.1.42.0 => /usr/lib/libboost_filesystem.so.1.42.0
> > (0x00007ff956e80000) libboost_system.so.1.42.0 =>
> > /usr/lib/libboost_system.so.1.42.0 (0x00007ff956c7c000)
> >
> > Various libraries are not found. During install I also get messages like
> >
> > -- Installing:
> >
> > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinux
> > .so -- Set runtime path of
> >
> > "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnulinu
> > x.so" to
> > "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib:/home/mk/tmp/rtt/rtt-v2.1.1-
> > 125-g8734a9e/lib:/home/mk/tmp/rtt/rtt-v2.1.1-125-g8734a9e/lib/orocos/plugin
> > s" -- Installing:
> > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/include/ocl/DeploymentComponent.h
> > pp -- Installing:
> > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux -- Removed
> > runtime path from
> > "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux" --
> > Installing:
> > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/orocos/liborocos-lua-gnulinux
> > .so
> >
> > Is there any way I can avoid setting the paths manually?
>
> If there are issues, these must be fixed in the UseOrocos.cmake macros, since
> these are the only ones we use.

Ok, if I only knew what to fix.

> Did you source 'env.sh' ?

No, why? Since when? This is not an rosbuild!

Markus

missing libraries of installed ocl

On Tuesday 07 December 2010 10:30:14 Markus Klotzbuecher wrote:
> On Tue, Dec 07, 2010 at 10:25:13AM +0100, Peter Soetens wrote:
> > On Tuesday 07 December 2010 09:46:19 Markus Klotzbuecher wrote:
> > > I thought this used to work:
> > >
> > > 1. built and installed rtt into /home/mk/tmp/rtt-<version> ($RTT_PATH)
> > >
> > > 2. built ocl against it and installed it to /home/mk/tmp/ocl-<version>
> > > ($TGT) like this:
> > >
> > >
> > > $ unset ROS_ROOT
> > > $ cmake . -DCMAKE_INSTALL_PREFIX=$TGT -DCMAKE_PREFIX_PATH=$RTT_PATH
> > > -DOROCOS-RTT_DIR=$RTT_PATH $ make
> > > $ make install
> > >
> > > cd $TGT/bin
> > > PMA-10-048 ~/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin $ ldd
> > > deployer-gnulinux
> > >
> > > linux-vdso.so.1 => (0x00007fff90dfc000)
> > > liborocos-rtt-gnulinux.so.2.1 => not found
> > > liborocos-taskbrowser-gnulinux.so => not found
> > > liborocos-deployment-gnulinux.so => not found
> > > libboost_program_options.so.1.42.0 =>
> > >
> > > /usr/lib/libboost_program_options.so.1.42.0 (0x00007ff957094000)
> > > libboost_filesystem.so.1.42.0 =>
> > > /usr/lib/libboost_filesystem.so.1.42.0 (0x00007ff956e80000)
> > > libboost_system.so.1.42.0 =>
> > > /usr/lib/libboost_system.so.1.42.0 (0x00007ff956c7c000)
> > >
> > > Various libraries are not found. During install I also get messages
> > > like
> > >
> > > -- Installing:
> > >
> > > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnuli
> > > nux .so -- Set runtime path of
> > >
> > > "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/liborocos-deployment-gnul
> > > inu x.so" to
> > > "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib:/home/mk/tmp/rtt/rtt-v2.1
> > > .1-
> > > 125-g8734a9e/lib:/home/mk/tmp/rtt/rtt-v2.1.1-125-g8734a9e/lib/orocos/p
> > > lugin s" -- Installing:
> > > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/include/ocl/DeploymentComponen
> > > t.h pp -- Installing:
> > > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux --
> > > Removed runtime path from
> > > "/home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/bin/deployer-gnulinux" --
> > > Installing:
> > > /home/mk/tmp/ocl/ocl-v2.1.1-163-g3d33162/lib/orocos/liborocos-lua-gnuli
> > > nux .so
> > >
> > > Is there any way I can avoid setting the paths manually?
> >
> > If there are issues, these must be fixed in the UseOrocos.cmake macros,
> > since these are the only ones we use.
>
> Ok, if I only knew what to fix.
>
> > Did you source 'env.sh' ?
>
> No, why? Since when? This is not an rosbuild!

I know. env.sh is for autoproj builds.

Peter