1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-24 08:32:34 +02:00
vcmi/README.linux
2012-04-21 10:26:15 +00:00

123 lines
4.2 KiB
Plaintext

I. 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 the sources with subversion:
cd trunk
svn co https://vcmi.svn.sourceforge.net/svnroot/vcmi/trunk src
II. Compiling
Optionaly, if you want to regenerate the build system, you will need the following tools:
* libtool
* automake
* autoconf
And then regenerate the build system with
autoreconf -i
To compile, at least the following packages (and their development counterparts) are needed to build:
* libstdc++ devel
* 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.36+ (1.35 will not work) (www.boost.org):
- program-options
- filesystem
- iostreams
- system
- thread
On Ubuntu 9.04 or later, run:
sudo apt-get install g++ libsdl1.2debian-all libsdl-image1.2-dev libsdl-ttf2.0-dev libsdl-mixer1.2-dev zlib1g-dev libavformat-dev libswscale-dev libboost-dev libboost-filesystem-dev libboost-iostreams-dev libboost-system-dev libboost-thread-dev libboost-program-options-dev
On Fedora run(this may not be complete):
sudo yum install gcc-c++ SDL-devel SDL_image-devel SDL_ttf-devel boost boost-devel boost-filesystem boost-iostreams boost-system boost-thread boost-program-options zlib-devel ffmpeg-devel ffmpeg-libs
On linux distributions like Fedora Mp3 support isn't given for the time being.
There is a mantis call here: http://bugs.vcmi.eu/view.php?id=933.
Create a directory /DATA_PATH/vcmi (default is usually /usr/local/share/games/vcmi)
that will contain the game data files. The /vcmi at the end is necessary.
Create a directory that will contain the shared libraries. (default is usually /usr/local/lib64/games/vcmi)
Then run configure:
cd trunk/build
../src/configure
Or if you're installing to custom path:
../src/configure --datadir=/DATA_PATH/ --bindir=/BIN_PATH/vcmi --libdir=/LIB_PATH/
An example would be:
../src/configure --datadir=/usr/local/share/games --bindir=/usr/local/games --libdir=/usr/local/lib64/games
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 the configure script.
Then build vcmi:
make
That will generate vcmiclient, vcmiserver as well as 3 .so libraries.
II. Installing Heroes of Might and Magic 3
VCMI needs an installed version of Heroes III as well as WoG on top of
it. The version of Heroes needed is either Shadow of Death
or Complete.
Wog can be downloaded from: http://www.maps4heroes.com/heroes3/files/allinone_358f.zip
Wine can be used to install both.
Install Heroes 3 and Wog. Then move all the installed files into
/DATA_PATH/vcmi. For instance that will create
/DATA_PATH/vcmi/Data.
Once both programs are installed, you can install VCMI.
Download the windows VCMI release (at time of writing:
http://forum.vcmi.eu/dload.php?action=download&id=23)
and extract it in a private directory. Populate /YOUR_INSTALL_PATH/vcmi:
mv sprites /DATA_PATH/vcmi/Sprites
mv Data/* /DATA_PATH/vcmi/Data
mv Fonts Games /DATA_PATH/vcmi/
If you also have the original linux version of Heroes, you can also install the videos:
cp -a /PATH_TO_CDROM/data/video /DATA_PATH/vcmi/Data
III. Installing VCMI
Since VCMI is still in development, there's no install procedure, although something like this will work:
make install
You also need to update configuration files:
cp /PATH_TO_SOURCE/config /DATA_PATH/vcmi
For development puposes, it's better to use links. Go
to /BIN_PATH/, and type:
ln -s /PATH_TO_SOURCE/client/vcmiclient
ln -s /PATH_TO_SOURCE/server/vcmiserver
Go to /LIB_PATH/vcmi, and type:
ln -s /PATH_TO_SOURCE/lib/.libs/libvcmi.so libvcmi.so.0
Go to /LIB_PATH/vcmi/AI, and type:
ln -s /PATH_TO_SOURCE/AI/VCAI/.libs/VCAI.so
ln -s /PATH_TO_SOURCE/AI/StupidAI/.libs/StupidAI.so
Go to /DATA_PATH/vcmi, and type:
ln -s /PATH_TO_SOURCE/config
And start ./vcmiclient