[ros-users] Importing / including a new library into ROS (Oc…

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Armin Hornung
Date:  
To: ros-users
Subject: [ros-users] Importing / including a new library into ROS (OctoMap)
Hi!

I was wondering what the right "ROS way" would be to include an
opensource library (complete with Doxygen documentation) into ROS. With
my colleagues, we developed a 3D mapping framework based on octrees
(http://octomap.sf.net/, will be presented at the BRICS workshop at
ICRA) which is available under GPL in its own Sourceforge repository.

In the source tree (see
http://octomap.svn.sourceforge.net/viewvc/octomap/trunk/), there's a
"ros" directory which can be added to the ROS_PACKAGE_PATH. In there,
there's a sort of "virtual" octomap package that provides the flags for
linker and compiler. That all works nice and the library can be used in
other ROS nodes as well. But how would that be correctly integrated into
the ROS repository structure? Does that nearly empty "virtual" package
in a subdirectory pose a problem? Would you mind adding a repository to
the list of ROS repositories that just contains one library?

From what I've seen with other external libraries (e.g. Eigen, OpenCV),
the ROS package is a similar forwarding package which in addition
downloads and installs the library from an external location. That would
also work, we could put the ROS octomap in our existing "alufr-ros-pkg"
ROS repository, which would then pull the code from the "real"
octomap-SVN at sourceforge. It just didn't seem the right thing to do to
create another step for installing and downloading when you have control
over the original repository anyways. Plus, we would need to take care
that the code in the two repositories stays in sync in terms of the API,
instead of changing things only in one place.

Maybe there are other ideas on what to do (e.g. with svn:externals?), or
is the current repository / folder structure the way to go?

Cheers,
Armin

-- 
Armin Hornung                              Albert-Ludwigs-Universität
www.informatik.uni-freiburg.de/~hornunga   Dept. of Computer Science
        Humanoid Robots Lab
Tel.: +49 (0)761-203-8010                  Georges-Köhler-Allee 79
Fax : +49 (0)761-203-8007                  D-79110 Freiburg, Germany