英雄无敌3(跨平台含手机)

Ivan Savenko 16eb4b3267 First part of fix for 1712 преди 11 години
AI 5139378319 - migrated boost::function/ref/bind to std:: variants преди 11 години
Mods 0763b9a758 - Implemented object per zone limit преди 11 години
client 5139378319 - migrated boost::function/ref/bind to std:: variants преди 11 години
cmake_modules 88316f93d1 add NSIS generator settings преди 11 години
config 33acdc51bb Fixes 1852 - fixed typo in tower config and added check to detect such cases преди 11 години
debian 142272d588 Debian/Ubuntu builds will use SDL1.2 преди 11 години
editor 95034b9fa0 - Updated PCH to use our StdInc.h as the prefix header (not generated one from cotire) -> no exclude headers from ffmpeg/etc... statements required преди 11 години
launcher 00cda400a1 Miscellaneous improvements for Launcher UI: преди 11 години
lib 16eb4b3267 First part of fix for 1712 преди 11 години
osx 145df56126 different data file locations for different iso files преди 11 години
rpm fe1b16a7ec Some preparation towards mantis #1743: преди 11 години
scripting 383280f72a Merge branch 'develop' of https://github.com/vcmi/vcmi into RMG преди 11 години
server 5139378319 - migrated boost::function/ref/bind to std:: variants преди 11 години
test 56c74bc46a +More build target to support both SDL1 and SDL2 builds преди 11 години
.gitignore 1d57b75bc5 - random number generation refactoring преди 11 години
.travis.yml 68678f7d5a Added own e-mail for Travis notifications преди 11 години
AUTHORS 237d2b4090 Added myself преди 11 години
CCallback.cpp b2e8c92383 Cleanup: преди 11 години
CCallback.h 92a62368b5 One more fix for MVS compilation преди 11 години
CMakeLists.txt 12126754fb - added all SDL2 directories to CMake (in case if any SDL2 module is installed somewhere else) преди 11 години
ChangeLog d535a09d8b Updated changelog преди 11 години
Global.h 5139378319 - migrated boost::function/ref/bind to std:: variants преди 11 години
README.linux 5cbec833c2 - (linux) XDG filesystem support преди 11 години
README.md 20b0dd6211 Renamed readme to readme.md to enable formatting in github UI преди 11 години
VCMI_VS10.sln b1428bcd24 - Compile fix for editor - Renamed /Editor to /editor and Scripting/ERM to scripting/erm - Removed unused ipch folder and format file - Removed ancient lua folder преди 12 години
VCMI_VS11.sln 9e7013de77 Backup for my own MVS project configuration преди 11 години
VCMI_global.props a50e9219c2 Launcher works for me. преди 12 години
VCMI_global_debug.props 6ac70d6a0b Partially reverting r3191: DLL_LINKAGE on registerTypes def breaks compilation for MSVC. The function definition cannot be marked as dll import (and that happened, when it was included in CGameHandler.cpp) преди 12 години
VCMI_global_release.props bcf8cab19a Project files update/cleanup. преди 13 години
VCMI_global_user.props a50e9219c2 Launcher works for me. преди 12 години
license.txt 645ed84978 * license (GPL v2 or later) преди 17 години
vcmi.workspace 2947bdedfc [c::b] configure Test project dependencies преди 11 години
vcmibuilder 760ae7d44a Changes related to Debian packaging, based on josch patch преди 11 години
vcmimanual.tex 9c0df68cb8 Fixing spelling mistakes. Patch from josch, fixes #1759 преди 11 години

README.linux

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) 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, 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
* (optional) Qt 5, widget and network modules
* 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.48+ (www.boost.org):
- program-options
- filesystem
- system
- thread
- locale

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

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

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 http://svn.code.sf.net/p/vcmi/code/trunk/

III. Compilation

Run configure:
mkdir build && cd build
cmake ../src

Additional options that you may want to use:
To enable debugging: -DCMAKE_BUILD_TYPE=Debug
To enable launcher: -DENABLE_LAUNCHER=Yes

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 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.
Go to /BIN_PATH/, and type:

ln -s .../trunk/build/client/vcmiclient
ln -s .../trunk/build/server/vcmiserver
ln -s .../trunk/build/launcher/vcmilauncher

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