NOTE: Always check http://code.google.com/p/haggle/w/list for the most up to date information about Haggle, how to compile, supported hardware, etc.
See AUTHORS for information on which people are responsible for writing this code. You are encouraged to read this file in case you are confused about what Haggle is, is not, and who you should contact in case you have questions.
Target operating systems for Haggle are currently Windows/Windows Mobile, Linux, MacOS X and Android.
The code should run on similar operating systems with little effort.
Tested hardware platforms:
Complete functionality may not be supported on all platforms at all times (e.g., Bluetooth or WiFi functionality may differ, or not work at all, depending on platform).
See doc/CodeOverview.txt for a brief overview of the code.
Linux and MacOS X requires standard build environments. Install XCode in MacOS X and standard development headers and libraries in Linux (and of course GCC). Linux and MacOS X use autotools. See the autotools.HOWTO for instructions.
Currently, Haggle depends on the following libraries:
These libraries are usually available on UNIX-like systems (e.g., Linux and Mac OS X). For Windows there are bundled versions of these libraries along with Visual Studio project files to build them automatically.
See, for example, the 'winmobile' directory for Visual Studio project files that build the Windows Mobile version.
The following software packages need to be installed to build Haggle:
Project files to build Haggle are found in the "winmobile" directory.
You need Visual Studio 2008 or later.
Project files to build Haggle are found in the "windows" directory.
Install XCode. You can build Haggle either using XCode project files or by using autotools and make ("./configure && make"). In recent Mac OS X versions you might have to install the Java developer package to be able to build the Java bindings for libhaggle. This package is available from http://connect.apple.com/.
Most Linux distributions have modular software package systems that allow only minimal development environments to be installed. This frequently leads to problems of missing development packages when trying to compile Haggle. The goal is that the autotools system should capture these dependencies and inform the user exactly which development packages need to be installed. However, sometimes during development, this system is not updated to cope with new dependencies.
To minimize the problems, please make sure that at least the following packages are installed (list is for debian based distributions, e.g., Ubuntu):
The exact package names may of course vary.
See android/README
See iphone/README
Written by: Erik Nordström erik.nordstrom@gmail.com