[ros-users] [freebsd] Installing ROS on FreeBSD

Rene Ladan rene at freebsd.org
Sat Sep 18 23:00:04 UTC 2010

Hi all,

I have written a port for ROS (http://www.ros.org/) on FreeBSD [1]. It
builds and runs fine (from the build directory, i.e. ros/work/ros) after
setting up the environment as shown on the wiki page at
http://www.ros.org/wiki/cturtle/Installation/FreeBSD . The tutorial
which moves the turtle using the keyboard also works. So far so good.

When installing the port, several issues arise:
(a) some executables (e.g. rospack) and libraries hard-code the path to
some libraries they use, resulting in "cannot find library X" errors.
This can be seen when running ldd on these files. This seems to make it
harder to install these files in a different location (PREFIX, e.g.
/usr/local) than where they were built. How is this handled in the
Ubuntu packages?

(b) The file layout of ROS and FreeBSD (packages) differ for various
reasons. The file layout for FreeBSD is described in [2]. The file
layout of ROS is shown in the pkg-plist file in [1], with the exception
that I intend to move the files in ros/bin to PREFIX/bin (does not work
without symbolic links) and the *.so files which are not in 3rdparty
into PREFIX/lib (but see (a) ). I was also thinking about moving the
header files to PREFIX/include, but that will not work because the
compiler does not look into /usr/local/include by default and nothing in
ROS nor FreeBSD tells it to look there. The above seems a reasonable
compromise to me. Comments / objections / ideas are welcome.

Given the generic nature of the port, I am thinking of putting it in the
devel category.


[1] ftp://rene-ladan.nl/pub/freebsd/ros-1.2.1.tbz
SIZE = 21755 bytes
SHA256 = 1d4d0d235ca45d51c0a155774ec927518658ca04a68a83d300b87b70c5f467a7

[2] http://www.freebsd.org/cgi/man.cgi?query=hier&sektion=7

GPG fingerprint = ADBC ECCD EB5F A6B4 549F  600D 8C9E 647A E564 2BFC

More information about the freebsd-ports mailing list