List of Dependencies

From Wiki for iCub and Friends
Jump to navigation Jump to search

Please try to respect this list of dependencies, it is important in order to develop code that can be integrated in the main build. If you need to update this list, please let us know. We cannot guarantee that your request will be satisfied, but we can update this list if there are good reasons. Please understand that we have to maintain this list as stable as possible and that new dependencies create overhead to everyone. To us as maintainers because we have to keep up to date the list of instructions for installing and compiling the libraries, to users because they have to install all the required dependencies to build the code.


This is the list of dependencies for the iCub software. You should make sure your code compiles with the following libraries. If you develop using more recent libraries please make sure to check that you do use only features that are available in the releases listed below, otherwise it will not be possible to integrate your code.

  • GTK2.0 Rel. 2.14
  • GTKMM Rel. 2.14
  • QT3
  • GNU Scientific Library, GSL Rel. 1.14
  • OpenCV 2.0
  • Open Dynamics Engine: ODE Rel. 0.10
  • Simple DirectMedia Layer: SDL Rel. 1.2
  • Interior Point OPTimizer library: Ipopt Rel. 3.5.0

Check also configuration of compile test servers:

A note on Debian Etch

For legacy reasons we still support the old Debian Etch. This is for compatibility with the iCubs that mount pc104 with the old canbus interface.

Not all the software can be compiled on this version of Linux. In particular Debian Etch come with GTK/GTKMM version 2.8 and opencv 0.9 -- for this reason a few modules will be skipped in the compilation. This will not affect the functionalities of the pc104.

A note on ACE

ACE is a complex and large library that, if not used carefully, can cause troubles. Unless you have very good reasons, we ask you to avoid using ace directly in your code. If you really have to use ACE functionalities please check if they are available in YARP (the OS.h header file in yarp already exports a minimal set of these functionalities).

Compilers and Tools

Make sure your code can be compiled with the following tools.

  • Compilers
    • Linux: gcc up to 4.4.1
    • Windows: Visual Studio 2005/2008. If you use the Express Edition on visual studio make sure you install the windows platform SDK (freely available from microsoft) and configure it correctly.
  • Tools, CMake:
    • Linux: version 2.8.7
    • Windows: version 2.8.7