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

DjWarmonger 5beaf42ebc Merge pull request #64 from ArseniyShestakov/fixCartographerCrash 11 anni fa
AI 2812334de9 add FL_CPP11 preprocessor define independent of which fuzzylite is used 11 anni fa
Mods 53016300ca Restore files accidentely deleted in https://github.com/vcmi/vcmi/commit/01491f9f1ec90932e6f05aaa9f7b0d0ae63029ab 11 anni fa
client f2aedabcb3 Fix slider remain enabled when not needed for changed label text 11 anni fa
cmake_modules 941dcee0f5 Fix AI and VCAI CMakeLists.txt 11 anni fa
config bddf662178 Few tweaks to bonus descriptions 11 anni fa
debian 356b6ab34a A bit delayed, but still - Linux version bump 11 anni fa
editor b551bdb725 Final part of the merge 11 anni fa
launcher a3d4f9d22f Fixed conversion warnings caused by Qt 11 anni fa
lib 6391f0f85a Fix crash on Cartographer if there is no underground level 11 anni fa
osx 145df56126 different data file locations for different iso files 11 anni fa
rpm fe1b16a7ec Some preparation towards mantis #1743: 11 anni fa
scripting b7ed11f582 Fix ERM build 11 anni fa
server e73c60740c corrected text in vcmibuilder, corrected errors and warnings from cppcheck 11 anni fa
test 22deb07b66 [c::b] update prejects, fix build 11 anni fa
.gitignore 6812ec6b7e Updated .gitignore 11 anni fa
.travis.yml 77684a9435 Merge pull request #43 from Mixaill/travis-test 11 anni fa
AUTHORS 237d2b4090 Added myself 11 anni fa
CCallback.cpp aa0433228a Fixed cheats - sendMesssage will also pass current object. 11 anni fa
CCallback.h aa0433228a Fixed cheats - sendMesssage will also pass current object. 11 anni fa
CMakeLists.txt 356b6ab34a A bit delayed, but still - Linux version bump 11 anni fa
ChangeLog 41acc944a0 Version 0.97. Updated changelog. 11 anni fa
Global.h 5c356f4415 add support for the HURD 11 anni fa
README.linux c3a4f15eda Updated build instructions with Fedora focus 11 anni fa
README.md 3e9ad21ca9 Updated readme to with info on assets license, including link to not-yet-existing vcmi-assets repository 11 anni fa
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 anni fa
VCMI_VS11.sln 9e7013de77 Backup for my own MVS project configuration 11 anni fa
VCMI_global.props a50e9219c2 Launcher works for me. 12 anni fa
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 anni fa
VCMI_global_release.props bcf8cab19a Project files update/cleanup. 13 anni fa
VCMI_global_user.props a50e9219c2 Launcher works for me. 12 anni fa
license.txt 645ed84978 * license (GPL v2 or later) 17 anni fa
vcmi.workspace 4c5c83aa1f Re add ERM to workspace 11 anni fa
vcmibuilder e946769b42 let data, maps and mp3 directory be truly case insensitive 11 anni fa
vcmimanual.tex 9c0df68cb8 Fixing spelling mistakes. Patch from josch, fixes #1759 11 anni fa

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++ 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

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

You can get latest sources with subversion:
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/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