README.linux 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. This readme covers VCMI compilation on Unix-like systems.
  2. To run the game you will need:
  3. 1) Heroes 3 data files (SoD or Complete editions);
  4. 2) Unofficial WoG addon
  5. 2) VCMI data pack (http://download.vcmi.eu/core.zip)
  6. For complete installation instructions see VCMI wiki:
  7. http://wiki.vcmi.eu/index.php?title=Installation_on_Linux#Preparing_data
  8. I. Prerequisites
  9. To compile, at least the following packages (and their development counterparts) are needed to build:
  10. * libstdc++ devel
  11. * CMake build system
  12. * SDL and SDL-devel
  13. * SDL_mixer and SDL_mixer-devel
  14. * SDL_image and SDL_image-devel
  15. * SDL_ttf and SDL_ttf-devel
  16. * zlib and zlib-devel
  17. * the ffmpeg libraries (libavformat and libswscale). Their name could be libavformat-devel and libswscale-devel, or ffmpeg-libs-devel or similar names.
  18. * boost c++ libraries v1.44+ (www.boost.org):
  19. - program-options
  20. - filesystem
  21. - system
  22. - thread
  23. On Debian-based systems (e.g. Ubuntu) run:
  24. 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
  25. On RPM-based distributions (e.g. Fedora) run:
  26. 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
  27. II. Getting the sources
  28. VCMI is still in development. We recommend the following initial directory structure:
  29. trunk
  30. trunk/src -> contains sources and is under SVN control
  31. trunk/build -> contains build output, makefiles, object files,...
  32. You can get latest sources with subversion:
  33. cd trunk
  34. svn co https://vcmi.svn.sourceforge.net/svnroot/vcmi/trunk src
  35. III. Compilation
  36. Run configure:
  37. mkdir build && cd build
  38. cmake ../src -DCMAKE_BUILD_TYPE=Debug (to enable debugging)
  39. Notice:
  40. The ../src/ is not a typo, it will place makefile scripts into the build dir
  41. as the build dir is your working dir when calling CMake.
  42. Then build vcmi:
  43. make -j2 (j2 = compile with 2 cpu cores, you can specifiy any value)
  44. That will generate vcmiclient, vcmiserver as well as 3 .so libraries.
  45. III. Installing binaries
  46. Since VCMI is still in development, there's no install procedure, although this will work:
  47. make install
  48. You also need to update configuration files:
  49. cp /PATH_TO_SOURCE/config /DATA_PATH/vcmi
  50. In this case you'll have to manually update these files after any changes.
  51. For more permament solution you should use links as described below.
  52. For development puposes, it's better to use links. Go
  53. to /BIN_PATH/, and type:
  54. ln -s .../trunk/build/client/vcmiclient
  55. ln -s .../trunk/build/server/vcmiserver
  56. Go to /LIB_PATH/vcmi, and type:
  57. ln -s .../trunk/build/lib/libvcmi.so libvcmi.so
  58. Go to /LIB_PATH/vcmi/AI, and type:
  59. ln -s .../trunk/build/AI/VCAI/VCAI.so
  60. ln -s .../trunk/build/AI/StupidAI/StupidAI.so
  61. ln -s .../trunk/build/AI/BattleAI/BattleAI.so
  62. Go to /DATA_PATH/vcmi, and type:
  63. ln -s .../trunk/source/config