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

Arseniy Shestakov 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
AI 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
CI 456e9fe405 Uncrustify: add initial configuration 8 ani în urmă
Mods db13d7a708 Version 0.99 updates. 9 ani în urmă
client 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
cmake_modules 36b8541ab5 MacOS build fix 8 ani în urmă
config 98140aab6b Add option to toggle monthly artifact change in black market (#341) 8 ani în urmă
debian 6c8aa6e938 Linux version bump for 0.99 9 ani în urmă
include 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
launcher 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
lib 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
osx 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
rpm 99d593172d RPM: Fix date for 0.99 release 9 ani în urmă
scripting 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
server 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
test 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
.gitignore c82a4fc3a2 Added few files and folders to .gitignore which should not be part of the repository when compiling with Visual Studio 2015 8 ani în urmă
.travis.yml fa02900e91 Travis CI: disable cache for Mac build 8 ani în urmă
AUTHORS 9fb9bef272 Adding myself to authors 8 ani în urmă
CCallback.cpp 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
CCallback.h 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
CMakeLists.txt 6abc88c2bf CMake: set _WIN32_WINNT to 0x0600 for FuzzyLite 6 8 ani în urmă
ChangeLog 2e47078ab9 Update ChangeLog 8 ani în urmă
Global.h 58f32f6dc2 Code style: uncrustify formatting preview 8 ani în urmă
README.linux a9277d0723 documentation: use git repo address instead of SVN 8 ani în urmă
README.md cb669dcca4 AppVeyor: add status badge README.md 8 ani în urmă
VCMI_VS11.sln 01a1353fe1 Cleanup: remove old editor code and adjust related project files 8 ani în urmă
VCMI_global.props 72f79a3ad7 Draft boost::format based log proxy. 9 ani în urmă
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 ani în urmă
VCMI_global_release.props bcf8cab19a Project files update/cleanup. 13 ani în urmă
VCMI_global_user.props a50e9219c2 Launcher works for me. 12 ani în urmă
Version.cpp.in f1e5797834 Code style: move or add licensing information on top of every file 8 ani în urmă
Version.h da1c9cf249 Fix rebuilding everything on HEAD change 9 ani în urmă
license.txt 645ed84978 * license (GPL v2 or later) 17 ani în urmă
vcmi.workspace 22e1d5d3b1 [c::b] Move FuzzyLite project up one level to be prepared to submodule use 8 ani în urmă
vcmibuilder 71378546c1 Try to quick fix issue 2376 9 ani în urmă
vcmimanual.tex a9277d0723 documentation: use git repo address instead of SVN 8 ani în urmă

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.50+ (www.boost.org):
- program-options
- filesystem
- system
- thread
- locale

On Debian-based systems (e.g. Ubuntu) run:
sudo apt-get install cmake g++ libsdl2-dev libsdl2-image-dev libsdl2-ttf-dev libsdl2-mixer-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 libboost-test-dev qtbase5-dev

On RPM-based distributions (e.g. Fedora) run:
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 qt5-qtbase-devel

On Arch-based distributions, there is a development package available for VCMI on the AUR. It can be found at:
https://aur.archlinux.org/packages/vcmi-git/

Information about building packages from the Arch User Repository (AUR) can be
found at the Arch wiki.

II. Getting the sources

VCMI is still in development. We recommend the following initial directory structure:
.
├── vcmi -> contains sources and is under git control
└── build -> contains build output, makefiles, object files,...

You can get latest sources with:
git clone https://github.com/vcmi/vcmi.git

III. Compilation

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

Additional options that you may want to use:
To enable debugging: -DCMAKE_BUILD_TYPE=Debug
To change installation directory: -DCMAKE_INSTALL_PREFIX=$absolute_path_to_directory

Notice:
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.

Then build vcmi:
make -j2 (j2 = compile with 2 threads, you can specify any value)

That will generate vcmiclient, vcmiserver, vcmilauncher 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, 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:

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/libVCAI.so
ln -s .../trunk/build/AI/StupidAI/libStupidAI.so
ln -s .../trunk/build/AI/BattleAI/libBattleAI.so

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

IV. Compiling documentation

To compile using Doxygen, the UseDoxygen CMake module must be installed. It can
be fetched from: http://tobias.rautenkranz.ch/cmake/doxygen/

Once UseDoxygen is installed, run:
cmake .
make doc

The built documentation will be available from ./doc