This readme covers VCMI compilation on Unix-like systems.

To run the game you will need:
1) Heroes 3 data files (SoD or Complete editions);
2) Unofficial WoG addon
2) VCMI data pack (http://download.vcmi.eu/core.zip)
All of them can be installed manually or using vcmibuilder script

For complete installation instructions see VCMI wiki:
http://wiki.vcmi.eu/index.php?title=Installation_on_Linux#Preparing_data

I. Prerequisites

To compile, at least the following packages (and their development counterparts) are needed to build:
	* libstdc++ devel
	* CMake build system
	* SDL and SDL-devel
	* SDL_mixer and SDL_mixer-devel
	* SDL_image and SDL_image-devel
	* SDL_ttf and SDL_ttf-devel
	* zlib and zlib-devel
	* the ffmpeg libraries (libavformat and libswscale). Their name could be libavformat-devel and libswscale-devel, or ffmpeg-libs-devel or similar names.
	* boost c++ libraries v1.44+ (www.boost.org):
		- program-options
		- filesystem
		- system
		- thread

On Debian-based systems (e.g. Ubuntu) run:
  sudo apt-get install cmake g++ libsdl1.2debian libsdl-image1.2-dev libsdl-ttf2.0-dev libsdl-mixer1.2-dev zlib1g-dev libavformat-dev libswscale-dev libboost-dev libboost-filesystem-dev libboost-system-dev libboost-thread-dev libboost-program-options-dev

On RPM-based distributions (e.g. Fedora) run:
  sudo yum install cmake gcc-c++ SDL-devel SDL_image-devel SDL_ttf-devel SDL_mixer-devel boost boost-devel boost-filesystem boost-system boost-thread boost-program-options zlib-devel ffmpeg-devel ffmpeg-libs

II. Getting the sources

VCMI is still in development. We recommend the following initial directory structure:
trunk
trunk/src -> contains sources and is under SVN control
trunk/build -> contains build output, makefiles, object files,...

You can get latest sources with subversion:
  cd trunk
  svn co https://vcmi.svn.sourceforge.net/svnroot/vcmi/trunk src

III. Compilation

Run configure:
  mkdir build && cd build
  cmake ../src -DCMAKE_BUILD_TYPE=Debug (to enable debugging)

Notice:
The ../src/ is not a typo, it will place makefile scripts into the build dir 
as the build dir is your working dir when calling CMake.

Then build vcmi:
  make -j2 (j2 = compile with 2 cpu cores, you can specifiy any value)

That will generate vcmiclient, vcmiserver as well as 3 .so libraries.

III. Installing binaries

To install VCMI type (as root):
  make install

For development puposes, it's better to use links instead.
Go to /BIN_PATH/, and type:

  ln -s .../trunk/build/client/vcmiclient
  ln -s .../trunk/build/server/vcmiserver
  
Go to /LIB_PATH/vcmi, and type:

  ln -s .../trunk/build/lib/libvcmi.so libvcmi.so
  
Go to /LIB_PATH/vcmi/AI, and type: 
  ln -s .../trunk/build/AI/VCAI/VCAI.so
  ln -s .../trunk/build/AI/StupidAI/StupidAI.so
  ln -s .../trunk/build/AI/BattleAI/BattleAI.so

Go to /DATA_PATH/vcmi, and type:
  ln -s .../trunk/source/config
  ln -s .../trunk/source/Mods