CoMPS is verified to work with openrave revision 3603, use this number where ever you see [VERIFIED_REV] below. This corresponds to release 0.7 of openrave.
Before installing CoMPS, you must first install openrave and set up the proper paths in your .bashrc. You have two options for installing openrave below. If you already have ROS installed, I recommend option 2, as it will save you the trouble of compiling the required components for openrave.
The easiest way is to install openrave from the package manager. See instructions here.
However, keep in mind that CoMPS may not work with the latest bleeding-edge revision of openrave, though we will try to keep it as up-to-date as possible. If you are having trouble compiling CoMPS or getting runtime errors not related to CoMPS, then try checking out revision [VERIFIED_REV] of openrave instead of the latest revision.
svn co -r[VERIFIED_REV] https://openrave.svn.sourceforge.net/svnroot/openrave/trunk openrave
See instructions for compiling from source here.
Get the required libraries listed here.
Check out the package source from svn:
svn co https://jsk-ros-pkg.svn.sourceforge.net/svnroot/jsk-ros-pkg/trunk/openrave_planning
Then add your path to the openrave_planning directory to ROS_PACKAGE_PATH in your .bashrc. You will also need to install the ROS packages that openrave depends on. You can find these in openrave_planning/openrave/manifest.xml.
Once you have all of the necessary packages, you can compile openrave using this command:
rosmake openrave
If you will be using python and/or octave/matlab (necessary to run the examples), see the relevant sections here.
Keep in mind that CoMPS may not work with the latest bleeding-edge revision of openrave, though I will try to keep it as up-to-date as possible. If you are having trouble compiling CoMPS or getting runtime errors not related to CoMPS, then try checking out revision [VERIFIED_REV] of openrave instead of the latest revision. To do this, you need to specify the revision in the Makefile in openrave_planning/openrave. Set the SVN_REVISION variable like this:
SVN_REVISION = -r [VERIFIED_REV]
If downgrading from a later revision that has already been compiled, first change SVN_REVISION in the Makefile as shown above then cd to openrave_planning and do:
rm -rf openrave_svn; svn up; rosmake openrave
After compiling openrave you will need to add openrave's bin directory to your path in .bashrc:
export PATH=[OPENRAVE_DIR]/bin:$PATH
First get qhull and newmat from the package manager:
sudo apt-get install libqhull-dev libqhull5 libnewmat10-dev libnewmat10ldbl
If qhull is not available as a package for your distribution of linux, you will need to compile it from source, which can be found here. If newmat is not available, the sources are here.
Check out CoMPS from svn:
svn co svn checkout svn://svn.code.sf.net/p/comps/code/trunk [COMPS_DIR]
Go to the comps directory and compile all the plugins with this command:
sh buildallplugins.sh
This will compile libraries and place them in comps/plugins. Note that this script does a full clean and install, which may be necessary if you update openrave or CoMPS revisions. If you would like to recompile individual plugins without cleaning them, go to their directory in comps/planning and do
make install
To get openrave to find the compiled plugins, add the path to comps/plugins to the OPENRAVE_PLUGINS variable in .bashrc:
export OPENRAVE_PLUGINS=[COMPS_DIR]/plugins:$OPENRAVE_PLUGINS
If you have do not have an OPENRAVE_PLUGINS variable in your .bashrc, then first locate the openrave install directory (default is /usr/local/ if you used option 1 above or openrave_planning/openrave if you used option 2). Then, put this in the .bashrc (change 0.7 to the appropriate release if necessary):
export OPENRAVE_PLUGINS=[COMPS_DIR]/plugins:[OPENRAVE_INSTALL_DIR]/share/openrave-0.7/plugins
Now the CoMPS plugins should be available to you when you launch openrave. To confirm this type
openrave --listplugins
and make sure CBiRRT, GeneralIK, and Manipulation appear in the list.