|
|
(66 intermediate revisions by 7 users not shown) |
Line 1: |
Line 1: |
− | = Prerequisites =
| + | {{Template:MovedToWebpage|https://vcmi.eu/developers/Building_Windows/}} |
− | * Microsoft Visual Studio [https://www.visualstudio.com/vs/older-downloads/ 2015] or [http://www.visualstudio.com/downloads/download-visual-studio-vs 2017]
| |
− | * Git or git GUI, for example, SourceTree [http://www.sourcetreeapp.com/download download]
| |
− | * CMake [https://cmake.org/download/ download]
| |
− | * To unpack pre-build Vcpkg [http://www.7-zip.org/download.html download] 7z
| |
− | | |
− | = Install dependencies =
| |
− | == Download pre-built Vcpkg ==
| |
− | You might save a time by using Vcpkg packages pre-built by VCMI team.
| |
− | Package guaranteed to work since it tested with every commit by [https://ci.appveyor.com/project/vcmi/vcmi AppVeyor].
| |
− | | |
− | Latest archive always available on GitHub: https://github.com/vcmi/vcmi-deps-windows/releases
| |
− | | |
− | === Download and unpack archive ===
| |
− | | |
− | Only download latest version available.
| |
− | | |
− | * vcpkg-export-'''x86'''-windows-v140.7z to build for 32-bit
| |
− | * vcpkg-export-'''x64'''-windows-v140.7z to build for 64-bit
| |
− | | |
− | Extract archive by right clicking on it and choosing "7-zip -> Extract Here".
| |
− | | |
− | === Move dependencies to target directory ===
| |
− | | |
− | Once extracted "vcpkg" directory will appear with "installed" and "scripts" inside it.
| |
− | | |
− | Move it where you wish, e.g right to the '''C:\''' so full path to Vcpkg will be '''C:\vcpkg'''. We will call this directory as [VCPKG_DIR]
| |
− | | |
− | == Build Vcpkg on your own ==
| |
− | Be aware that building Vcpkg might take a lot of time depend on your CPU model and 10-20GB of disk space.
| |
− | === Create initial directory ===
| |
− | Create a directory for vcpkg development, eg. '''C:\vcpkg'''
| |
− | We will call this directory as '''[VCPKG_DIR]'''
| |
− | | |
− | It is recommended to avoid non-ascii characters in the path to your vcpkg folder. The folder should not be write-protected by system.
| |
− | Good location:
| |
− | * '''C:\vcpkg'''
| |
− | Bad locations:
| |
− | * '''C:\Users\Michał\vcpkg''' (non-ascii character)
| |
− | * '''C:\Program Files (x86)\vcpkg''' (write protection)
| |
− | | |
− | === Clone vcpkg ===
| |
− | | |
− | * open SourceTree
| |
− | * File -> Clone
| |
− | * select '''https://github.com/microsoft/vcpkg/''' as source
| |
− | * select '''[VCPKG_DIR]''' as destination
| |
− | * click '''Clone'''
| |
− | | |
− | === Build vcpkg ===
| |
− | * Run '''[VCPKG_DIR]/bootstrap-vcpkg.bat'''
| |
− | | |
− | === Build dependencies ===
| |
− | * For 32-bit build run '''[VCPKG_DIR]/vcpkg.exe install minizip:x86-windows sdl2:x86-windows sdl2-image:x86-windows sdl2-ttf:x86-windows sdl2-mixer:x86-windows boost:x86-windows qt5:x86-windows ffmpeg:x86-windows'''
| |
− | * For 64-bit build run '''[VCPKG_DIR]/vcpkg.exe install minizip:x64-windows sdl2:x64-windows sdl2-image:x64-windows sdl2-ttf:x64-windows sdl2-mixer:x64-windows boost:x64-windows qt5:x64-windows ffmpeg:x64-windows'''
| |
− | | |
− | = Build VCMI =
| |
− | | |
− | == Create initial directory ==
| |
− | Create a directory for VCMI development, eg. '''C:\VCMI'''
| |
− | We will call this directory as '''[VCMI_DIR]'''
| |
− | | |
− | It is recommended to avoid non-ascii characters in the path to your VCMI development folder. The folder should not be write-protected by system.
| |
− | Good location:
| |
− | * '''C:\VCMI'''
| |
− | Bad locations:
| |
− | * '''C:\Users\Michał\VCMI''' (non-ascii character)
| |
− | * '''C:\Program Files (x86)\VCMI''' (write protection)
| |
− | | |
− | == Clone VCMI ==
| |
− | * open SourceTree
| |
− | * File -> Clone
| |
− | * select '''https://github.com/vcmi/vcmi/''' as source
| |
− | * select '''[VCMI_DIR]/source''' as destination
| |
− | * click '''Clone'''
| |
− | | |
− | == Compile VCMI ==
| |
− | * create '''[VCMI_DIR]/build'''
| |
− | * open '''[VCMI_DIR]/build''' in terminal
| |
− | * execute '''cmake ../source -DCMAKE_TOOLCHAIN_FILE=[VCPKG_DIR]/scripts/buildsystems/vcpkg.cmake -DCMAKE_INSTALL_PREFIX=[VCMI_DIR]/install'''
| |
− | * open '''VCMI.sln''' in Visual Studio
| |
− | * select "Release" build type in combobox
| |
− | * right click on '''BUILD_ALL''' project - build project
| |
− | * right click on '''INSTALL''' project - build project
| |
− | * grab VCMI in '''[VCMI_DIR]/install''' folder!
| |