Difference between revisions of "How to build VCMI (Windows/Vcpkg)"

From VCMI Project Wiki
Jump to: navigation, search
(Download pre-built Vcpkg)
(Replaced content with "{{Template:MovedToWebpage|https://vcmi.eu/developers/Building_Windows/}}")
 
(63 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 they tested with every commit by [https://ci.appveyor.com/project/vcmi/vcmi AppVeyor]
 
 
 
=== Download and unpack archive ===
 
 
 
Archives are available from GitHub: https://github.com/vcmi/vcmi-deps-windows/releases
 
 
 
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!
 

Latest revision as of 16:07, 16 July 2024

Logo256.png    Page moved to VCMI-Homepage