Fawkes Dependencies

Here is a list of current Fawkes dependencies. We try to minimize the number of dependencies but some are needed. Please verify your system carefully if it matches the criteria. Check all version numbers! If you are working with Fawkes for the first time and cannot get it to compile and consider sending a team member an email please include all version information about the packages mentioned here, whether they are exactly the same or higher. If any version is lower than what is mentioned here upgrade that package - we cannot help you in that case.

This information has to be replicated in the file source:trunk/doc/DEPENDENCIES in the Fawkes tree because there may be users that get the software without access to this website. But since this website will be the main source for information and since it is better readable we want this information to be here, too.

The Module here denotes either the main application (Fawkes) or a specific plugin (like Navigator) or subsystem (like FireVision).

Mandatory dependencies

These are must-have items. If anything is not installed or installed in a lower version it will not work.

ModuleDependencyVersionNotes
Fawkes Linux kernel>= 2.6.17older versions will not work!
Fawkes make>= 3.81needed for second expansion
Fawkes bash>= 3.2mandatory for our build system
Fawkes GNU Compiler Collection>= 4.1
Fawkes GNU Standard C++ Library>= 4.1included in GCC, but separate package on Fedora
Fawkes glibc>= 2.7
Fawkes SQLite>= 3.4Configuration subsystem uses SQLite
Fawkes OpenSSL>= 0.9.8bWorldInfoTransceiver Encryption
Fawkes file>= 4.21Needs libmagic that comes on Fedora in file-devel
Fawkes libstrfunc>= 8.3FreeBSD only

Optional dependencies

Below is a list of optional dependencies. Having this will reveal more features and make the software more useable. Many of these optional dependencies reveal a whole new world of features so install what is possible. If the module is marked with an asterisk (*) in the R(ecommended) column then it is strongly recommended to install this dependency. Without the software will not be as useful as it should be.

ModuleDependencyVersionRNotes
All Intel Compiler>= 10.1.008icc can be used to compile the software. Set CC to icc in config.mk and ICC_PATH appropriately in icc.mk
All Subversion>= 1.4*needed if you want to use the version control system
Fawkes libxml++>= 2.20.0*needed to build interface_generator, only needed when developing interfaces
Fawkes Avahi>= 0.6*Used for automatic peer and service detection, required on the robots
Fawkes libexecinfo>= 1.1*Required for Exception::backtrace() support on FreeBSD only
All gtkmm>= 2.12Used for GUI applications
All glibmm>= 2.14Used for GUI applications
All cairomm>= 1.4.4Field visualization
All glademm>= 2.6.4Glade used to build GUIs
Fawkes/FireVision OpenMP>= 2.5OpenMP spec 2.5, comes with GCC 4.2 (4.1 on Fedora) and ICC 10
Navigator GTS>= 0.7.6needed to build navigator plugin
NavigatorVMC== 0.95needed to build navigator with real motor support, custom patches required
Kicker libiowkit>= 1.5.0needed to access the IOWarrior (kicker)
Skiller Lua>= 5.1*Skills are developed in Lua
Skiller toLua++>= 1.0.92*Needed to generate Lua bindings for utils, interfaces etc.
Skiller Graphviz>= 2.22*Used by SkillGUI for FSM visualization
Katana KNI== 3.9.2Needed to use katana plugin to access arm, on Fedora install libkni3-devel
Laser PCAN>= 6.0Needed to access Lase/Ibeo LD Ladar laser scanner, works only with old kernels
FireVision libdc1394>= 2.0.1*needed for Firewire support
FireVision SDL>= 1.2.13*strongly recommended for visualization tools
FireVision Intel IPP== 5.1used in filters, free university version available
FireVision libjpeg>= 6b-39*image reader/writer/compressor, JPEG network transmission
FireVision libpng>= 1.2.22optional image reader/writer
FireVision OpenCV>= 1.0.0OpenCV image processing library, for example for face detection
FireVisionleutron>= 1.96.204frame grabber for old Leutron PCs
FireVisionTriclops SDK>= 3.2.0.8PTGrey Bumblebee2 support, see FireVisionTriclops

How to get dependencies

Most of the dependencies should be met by a recent Linux distribution, Fedora 10 and upwards is preferred and supported.

For dependencies that are not fulfilled by the distribution itself a Yum repository is provided for Fedora 8 to 11. The repository release RPM is available:

Fedora 8:

 https://lechuck.informatik.rwth-aachen.de:2342/yumrepo/8/i386/allemaniacs-release-8-1.noarch.rpm

Fedora 9:

 https://lechuck.informatik.rwth-aachen.de:2342/yumrepo/9/i386/allemaniacs-release-9-1.noarch.rpm

Fedora 10:

 https://lechuck.informatik.rwth-aachen.de:2342/yumrepo/10/i386/allemaniacs-release-10-1.noarch.rpm

Guides

There are some guides on how to get up and running: