- Установите CMake версии не меньше 3.12
- Windows: скачайте один из установщиков под Windows (например, версию 3.21.2 для x64) и установите (не забудьте выбрать пункт
Add CMake to current user PATH
при установке, иначе CMake не удастся запустить из терминала) - Linux: поставьте пакет CMake из официальных репозиториев (
apt install cmake
, etc) - mac OS: скачайте один из образов под macOS (например, версию 3.21.2 для macOS 10.10) и установите, или поставьте CMake через Homebrew (
brew install cmake
)
- Windows: скачайте один из установщиков под Windows (например, версию 3.21.2 для x64) и установите (не забудьте выбрать пункт
- Установите библиотеку GLEW
- Установите библиотеку SDL2
- Windows: скачайте dev-архив (подпункт
Development Libraries
на странице скачивания; например, версию 2.0.16 для Visual Studio) и распакуйте куда-нибудь - Linux: поставьте dev-пакет SDL2 из официальных репозиториев (
apt install libsdl2-dev
, etc) - Скачайте образ под macOS (например, версию 2.0.16) и установите, или поставьте SDL2 через Homebrew (
brew install sdl2
)
- Windows: скачайте dev-архив (подпункт
- Склонируйте куда-нибудь репозиторий с кодом для практического занятия:
git clone https://github.com/lisyarus/graphics-course-practice.git
- Соберите тестовый проект (
graphics-course-practice/2022/practice1
):- Windows:
- В директории с проектом создайте директорию сборки
<путь>/graphics-course-practice/2022/practice1/build
- Откройте терминал (стандартный
cmd
или лучше PowerShell, Git Bash, Cygwin, или что-нибудь такое) и перейдите в директорию сборки<путь>/graphics-course-practice/2022/practice1/build
- Сконфигурируйте сборку, запустив CMake:
cmake .. -G '<генератор>' -DGLEW_ROOT='<путь до библиотеки GLEW>' -DSDL2_ROOT='<путь до библиотеки SDL2>
, где<генератор>
- выбранный вами CMake-генератор, например'Visual Studio 17 2022'
, если вы хотите сконфигурировать проект для работы с Visual Studio 17 2022 (полный список Visual Studio генераторов есть здесь)'<путь до библиотеки GLEW>'
- путь до директории, куда вы распаковали библиотеку GLEW (в ней должны быть директорииdoc
,lib
,include
,bin
и файлLICENSE.TXT
)'<путь до библиотеки SDL2>'
- путь до директории, куда вы распаковали библиотеку SDL2 (в ней должны быть директорииdoc
,include
,lib
и несколько.txt
-файлов) При использовании нестандартного эмулятора терминала могут возникнуть проблемы с форматом путей, но CMake должен нормально распознать стандартные Windows-пути (C:\Users\Me\Projects\graphics-course-practice\2022\...
) В некоторых терминалах нужно использовать двойные, а не одинарные кавычки
- Соберите проект:
cmake --build .
- Скопируйте необходимые библиотеки (
${SDL2_ROOT}/lib/x64/SDL2.dll
и${GLEW_ROOT}/bin/Release/x64/glew32.dll
) в директорию с собранным проектом (при использовании Visual Studio это будетbuild/Debug
) и погорюйте о том, что в Windows нет концепции RPath - Запустите собранный проект, должно появиться окно голубого цвета:
build/practice1
- Пункты
d
иf
можно выполнить из Visual Studio, если вы использовали соответствующий генератор, -- для этого нужно открыть Visual Studio solution, сгенерированный в директории сборки, и выбрать practice1 (вместо ALL_BUILD!) в качестве стартового проекта
- Пункты
- В директории с проектом создайте директорию сборки
- Windows с помощью CMake-GUI:
- В директории с проектом создайте директорию сборки
<путь>/graphics-course-practice/2022/practice1/build
- Запустите CMake-GUI (он идёт в стандартном коплекте с CMake, т.е. скорее всего уже у вас установлен)
- В качестве директории с исходным кодом (
Where is the source code:
) укажите путь до тестового проекта (<путь>/graphics-course-practice/2022/practice1
) - В качестве директории сборки (
Where to build the binaries:
) укажите путь до директории сборки (<путь>/graphics-course-practice/2022/build
) - Добавьте переменную
GLEW_ROOT
с путём до библиотеки GLEW:- Нажмите
Add Entry
- Введите имя
GLEW_ROOT
- Выберите тип
PATH
- Выберите соответствующий путь в (
Value
)
- Нажмите
- Аналогично, добавьте переменную
SDL2_ROOT
с путём до библиотеки SDL2 - Нажмите
Configure
- Нажмите
Generate
- Дальнейшие действия совпадают с пунктами
d-f
в описании сборки под Windows
- В директории с проектом создайте директорию сборки
- Linux/macOS:
- Убедитесь, что вы находитесь в директории с проектом (
graphics-course-practice/2022/practice1
) - Создайте директорию сборки и перейдите в неё:
mkdir build && cd build
- Сконфигурируйте сборку, запустив CMake:
cmake ..
- Соберите проект:
cmake --build .
- Запустите собранный проект, должно появиться окно голубого цвета:
./practice1
- Убедитесь, что вы находитесь в директории с проектом (
- Любая ОС, CLion:
- На старте выберите "открыть проект", и откройте CMakeLists.txt в корне тестового проекта (
2022/practice1/CMakeLists.txt
) как проектный файл (CLion может спросить об этом) - Под windows: нужно создать CMake-профиль с путями до библиотек:
- Откройте
File > Settings > Build, Execution, Deployment > CMake
- Если не хотите менять текущий профиль (по умолчанию - Debug), создайте новый (плюсик сверху списка профилей)
- В строке
CMake options
введите-DGLEW_ROOT='<путь до библиотеки GLEW>' -DSDL2_ROOT='<путь до библиотеки SDL2>
(подробнее об этих путях см. в пунктеWindows.c
выше)- Генератор при этом указывать не нужно!
- Закройте окно настроек
- Если вы создавали новый профиль, выберите его в списке конфигураций (справа вверху)
- Откройте
- Запустите проект (Run /
[F6]
), должно появиться окно голубого цвета
- На старте выберите "открыть проект", и откройте CMakeLists.txt в корне тестового проекта (
- Windows: