Compile fail on windows

Hello,

I’m a newbie for VCMI, I love this game and want to become a developer of VCMI.

I have just followed the “How to build VCMI (Windows/Vcpkg)” steps, but it fails when generate solution for VCMI, log as below:

D:>cmake d:/VCMI/source -DCMAKE_TOOLCHAIN_FILE=d:/VCMI/vcpkg/scripts/buildsyste
ms/vcpkg.cmake -G “Visual Studio 15 2017 Win64”
– -- – Start of VCMI build debug information
– CMAKE_VERSION: 3.11.1
– CMAKE_BUILD_TYPE: RelWithDebInfo
– CMAKE_BINARY_DIR: D:/
– CMAKE_SOURCE_DIR: D:/VCMI/source
– CMAKE_MODULE_PATH: D:/VCMI/source/cmake_modules
– CMAKE_COMMAND: D:/Program Files/CMake/bin/cmake.exe
– CMAKE_ROOT: D:/Program Files/CMake/share/cmake-3.11
– UNIX: - WIN32: 1 - APPLE:
– MINGW: - CYGWIN: - MSVC: 1
– CMAKE_CXX_COMPILER_ID: MSVC
– CMAKE_CXX_COMPILER_VERSION: 19.13.26132.0
– CMAKE_C_COMPILER: d:/Program Files (x86)/Microsoft Visual Studio/2017/Profess
ional/VC/Tools/MSVC/14.13.26128/bin/Hostx86/x64/cl.exe
– CMAKE_CXX_COMPILER: d:/Program Files (x86)/Microsoft Visual Studio/2017/Profe
ssional/VC/Tools/MSVC/14.13.26128/bin/Hostx86/x64/cl.exe
– CMAKE_SYSTEM: Windows-10.0.16299.0
– CMAKE_SYSTEM_NAME: Windows
– CMAKE_SYSTEM_VERSION: 10.0.16299.0
– CMAKE_SYSTEM_PROCESSOR: AMD64
– -- – End of VCMI build debug information
– cotire 1.7.10 loaded.
– Boost version: 1.64.0
– Found the following Boost libraries:
– date_time
– filesystem
– locale
– program_options
– system
– thread
– chrono
– atomic
– Could NOT find FL (missing: FL_LIBRARIES FL_INCLUDE_DIRS)
CMake Error at AI/CMakeLists.txt:21 (add_subdirectory):
The source directory

D:/VCMI/source/AI/FuzzyLite/fuzzylite

does not contain a CMakeLists.txt file.

CMake Error at cmake_modules/VCMIUtils.cmake:43 (add_subdirectory):
The source directory

D:/VCMI/source/test/googletest

does not contain a CMakeLists.txt file.
Call Stack (most recent call first):
test/CMakeLists.txt:99 (add_subdirectory_with_folder)

– Configuring incomplete, errors occurred!
See also “D://CMakeFiles/CMakeOutput.log”.
See also “D://CMakeFiles/CMakeError.log”.

it seems missing “FuzzyLite”, there’s empty dir “VCMI/source/AI/FuzzyLite”, I create a fuzzylite in this empty dir, it still fails.

Is there anyone can help me? thanks a lot.

Since VCMI use submodules you must clone it with --recursive flag as stated on wiki.
But since you already cloned it you can just do inside repository:

git submodule update --init

Then it’s will get our dependencies and you should be able to build it.