Skip to content

SheKnowsMystery/Slots

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Слоты

Инструкция по сборке

Необходимо

  • CMake
  • vcpkg
  • система сборки, поддерживаемая генератором CMake
  • компилятор, поддерживающий стандарт языка C++17

Шаги

  1. Открыть консоль в папке проекта

  2. Создать папку /build и перейти в неё

    mkdir build
    cd build
  3. Сконфигурировать проектные файлы системы сборки используя CMake (при необходимости указав предпочитаемые систему сборки и компилятор)

    [!ВАЖНО!]

    • либо предварительно добавить переменную среды с именем VCPKG_ROOT, значением которой будет путь к корню vcpkg (далее как <vcpkg-root>)

      cmake ..
    • либо передать в качестве аргумента к CMake путь к toolchain vcpkg

      cmake .. -DCMAKE_TOOLCHAIN_FILE="<vcpkg-root>/scripts/buildsystems/vcpkg.cmake"

      что эквивалентно

      cmake .. --toolchain="<vcpkg-root>/scripts/buildsystems/vcpkg.cmake"
  4. Собрать проект в конфигурации Release и установить нужные файлы в папку /bin

    cmake --build . --config Release --target install
  5. Перейти в папку /bin и запустить приложение

    cd ..
    cd bin
    ./Slots.exe

Пост Скриптум

Возникли проблемы с зависимостями SDL2-image из-за того, что (на сколько я понял, изучив issues на GitHub) библиотека загружает свои зависимости в runtime, что приводит к тому, что эти зависимости почти невозможно отследить. В CMakeLists.txt немного костыльный способ скопировать бинарники библиотек. Не уверен, на сколько он кросс-платформенный. Что-то менять в коде и переписывать под другую библиотеку или другой способ загрузки ассетов уже не осталось времени, поэтому оставляю как есть.


Код остался без комментариев, потому что меня уже не хватило на них. При необходимости могу объяснить те или иные дизайнерские решения, а также что и почему происходит.

About

Тестовое Задание

Resources

Stars

Watchers

Forks

Packages

No packages published