From The Player Project

Revision as of 03:10, 27 November 2010 by Rmattes (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Installation Instructions for Gazebo

Below are instructions for both Linux and Max OSX. These instructions build everything from source. If your linux distribution has a package management system (such as apt or emerge), then you should try using that method to install the 3rd party libraries.


Note: For Ubuntu 10.04, step by step installation instructions can be found here.

  1. The first step is to install packages that Gazebo requires. Each of the following packages may require other libraries. Follow the install directions for each package, or use your systems package management system (assuming it provides the proper versions).
  2. Download gazebo:
    • Get a versioned release, and unpack the distribution.
    • Or get the SVN version of gazebo:
    $ svn co gazebo
  3. Configure gazebo:
    $ cd gazebo-<version>
    $ mkdir build
    $ cd build
    $ cmake ../
  4. Make gazebo:
    $ make
  5. Install gazebo:
    $ sudo make install

Troubleshooting the Install

It is assumed that you have been able to install all the 3rd party packages. If you experience problems with this step, contact the maintainers of the associated package(s).

  1. If gazebo doesn't compile:
    1. Check the output of the configure step. Resolve all errors by installing the necessary 3rd party packages.
    2. Make sure that the 3rd party packages are the correct versions.
    3. Remove old versions of gazebo.
    4. Search the mailing list for your problem.
    5. If all else fails, post a message to the mailing list


  1. 3rd Party Prerequisites
$ tar zxvf pkg-config-<version>.tar.gz<br>
$ cd pkg-config-<version><br>
$ ./configure<br>
$ sudo make install<br>
$ tar jxvf zziplib-<version>.tar.bz2
$ cd zziplib-<version>
$ ./configure
$ sudo make install
$ sudo sed -i -e 's/${datarootdir}/\/usr\/local\/share' /usr/local/lib/pkgconfig/zziplib.pc
$ unzip FreeImage<version>.zip
$ cd FreeImage
$ cp Makefile.gnu Makefile.osx
$ sed -e 's/$(CC) -s -shared -Wl,-soname,$(VERLIBNAME) -o $@ $(MODULES) $(LIBRARIES)/$(CC) -s -dynamiclib -o $@ $(MODULES) $(LIBRARIES)/' -e 's/-g root/-g wheel/g' Makefile.gnu > Makefile.osx
$ make
$ sudo make install
$ svn co opende
$ cd opende
$ sh
$ ./configure; make
$ sudo make install
$ tar jxvf ogre-<version.tar.bz2
$ cd ogre
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
$ sed -i -e 's/<Ogre\/OgrePrerequisites.h>/\"OgrePrerequisites.h\"/' OgreMain/include/OSX/OgreTimerImp.h
$ sed -i -e "s/macPlugins.h/..\/..\/Mac\/Ogre\/include\/macPlugins.h/" OgreMain/src/OgreDynLib.cpp
$ sed -i -e "s/static OSStatus/\/\/static OSStatus/" OgreMain/include/OgreWindowEventUtilities.h
$ sed -i -e 's/Plugin_BSPSceneManager_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src -Wl,-z,defs/Plugin_BSPSceneManager_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src/' PlugIns/BSPSceneManager/src/
$ sed -i -e 's/Plugin_ParticleFX_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src -Wl,-z,defs/Plugin_ParticleFX_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src/' PlugIns/ParticleFX/src/
$ sed -i -e 's/Plugin_OctreeSceneManager_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src -Wl,-z,defs/Plugin_OctreeSceneManager_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src/' PlugIns/OctreeSceneManager/src/
$ sed -i -e 's/Plugin_PCZSceneManager_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src -Wl,-z,defs/Plugin_PCZSceneManager_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src/' PlugIns/PCZSceneManager/src/
$ sed -i -e 's/Plugin_OctreeZone_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src -Wl,-z,defs/Plugin_OctreeZone_la_LDFLAGS = -module $(PLUGIN_FLAGS) -L$(top_builddir)\/OgreMain\/src/' PlugIns/OctreeZone/src/
$ ./configure --disable-cg
$ make
$ make install
Personal tools