1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-01-26 03:52:01 +02:00

Updated build instructions with Fedora focus

This commit is contained in:
rhn 2014-07-31 11:54:47 +02:00
parent a6151a5296
commit c3a4f15eda

View File

@ -31,43 +31,50 @@ 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 libboost-locale-dev qtbase5-dev 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 libboost-locale-dev qtbase5-dev
On RPM-based distributions (e.g. Fedora) run: 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 boost-locale zlib-devel ffmpeg-devel ffmpeg-libs sudo yum install cmake gcc-c++ SDL2-devel SDL2_image-devel SDL2_ttf-devel SDL2_mixer-devel boost boost-devel boost-filesystem boost-system boost-thread boost-program-options boost-locale zlib-devel ffmpeg-devel ffmpeg-libs
II. Getting the sources II. Getting the sources
VCMI is still in development. We recommend the following initial directory structure: VCMI is still in development. We recommend the following initial directory structure:
trunk trunk
trunk/src -> contains sources and is under SVN control trunk/vcmi -> contains sources and is under git control
trunk/build -> contains build output, makefiles, object files,... trunk/build -> contains build output, makefiles, object files,...
You can get latest sources with subversion: You can get latest sources with subversion:
cd trunk git clone https://github.com/vcmi/vcmi.git
svn co http://svn.code.sf.net/p/vcmi/code/trunk/
III. Compilation III. Compilation
Run configure: Run configure:
mkdir build && cd build mkdir build && cd build
cmake ../src <any other options, see below> cmake ../vcmi <any other options, see below>
Additional options that you may want to use: Additional options that you may want to use:
To enable debugging: -DCMAKE_BUILD_TYPE=Debug To enable debugging: -DCMAKE_BUILD_TYPE=Debug
To enable launcher: -DENABLE_LAUNCHER=Yes To change installation directory: -DCMAKE_INSTALL_PREFIX=$absolute_path_to_directory
Notice: Notice:
The ../src/ is not a typo, it will place makefile scripts into the build dir The ../vcmi/ is not a typo, it will place makefile scripts into the build dir
as the build dir is your working dir when calling CMake. as the build dir is your working dir when calling CMake.
Then build vcmi: Then build vcmi:
make -j2 (j2 = compile with 2 cpu cores, you can specifiy any value) make -j2 (j2 = compile with 2 threads, you can specify any value)
That will generate vcmiclient, vcmiserver as well as 3 .so libraries. That will generate vcmiclient, vcmiserver, vcmilauncher as well as 3 .so libraries.
III. Installing binaries III. Installing binaries
To install VCMI you can use "make install" command however generation of distribution-specific packages is usually a better idea. In most cases this can be achieved using tool called "checkinstall" To install VCMI you can use "make install" command however generation of distribution-specific packages is usually a better idea. In most cases this can be achieved using tool called "checkinstall"
If you're compiling vcmi for development puposes, it's better to use links instead. If you're compiling vcmi for development puposes, the easiest is to use cmake prefix and then make install:
# mkdir .../trunk/install
# cmake -DCMAKE_INSTALL_PREFIX=.../trunk/install ../vcmi
# make && make install
# .../trunk/install/bin/vcmiclient
it's better to use links instead.
Go to /BIN_PATH/, and type: Go to /BIN_PATH/, and type:
ln -s .../trunk/build/client/vcmiclient ln -s .../trunk/build/client/vcmiclient
@ -86,5 +93,3 @@ Go to /LIB_PATH/vcmi/AI, and type:
Go to /DATA_PATH/vcmi, and type: Go to /DATA_PATH/vcmi, and type:
ln -s .../trunk/source/config ln -s .../trunk/source/config
ln -s .../trunk/source/Mods ln -s .../trunk/source/Mods