diff --git a/content/posts/fltk-msys2-cmake/PATH.png b/content/posts/fltk-msys2-cmake/PATH.png new file mode 100644 index 0000000..88965e4 Binary files /dev/null and b/content/posts/fltk-msys2-cmake/PATH.png differ diff --git a/content/posts/fltk-msys2-cmake/SystemPropertiesAdvanced.png b/content/posts/fltk-msys2-cmake/SystemPropertiesAdvanced.png new file mode 100644 index 0000000..8e8536c Binary files /dev/null and b/content/posts/fltk-msys2-cmake/SystemPropertiesAdvanced.png differ diff --git a/content/posts/fltk-msys2-cmake/depends2.png b/content/posts/fltk-msys2-cmake/depends2.png new file mode 100644 index 0000000..4238623 Binary files /dev/null and b/content/posts/fltk-msys2-cmake/depends2.png differ diff --git a/content/posts/fltk-msys2-cmake/index.md b/content/posts/fltk-msys2-cmake/index.md index 5fe2ebc..886666b 100644 --- a/content/posts/fltk-msys2-cmake/index.md +++ b/content/posts/fltk-msys2-cmake/index.md @@ -1,9 +1,11 @@ --- -title: "FLTK - упрощаем себе жизнь с msys2 (часть 2)" +title: FLTK - упрощаем себе жизнь с msys2 (часть 2) date: 2023-01-07T19:46:00+03:00 draft: false -categories: ["cpp"] +categories: + - cpp featured_image: thumb.png +lastmod: 2023-12-04T20:36:03+03:00 --- Собираем приложения на FLTK с помощью msys2 и [CMake](https://cmake.org)! @@ -100,5 +102,54 @@ cmake --build . Сборка через msys2 удобна тогда, когда у нас уже есть готовый проект. Однако когда речь идёт о разработке, то мало какая IDE позволит себе роскошь запускать сборку в окружении msys2. -Чтобы избавиться от необходимости его использования, необходимо выполнить всего лишь... +Чтобы избавиться от необходимости его использования, нужно добавить необходимые компоненты в окружение. +Для начала нужно убедиться, что установлен пакет **mingw-w64-i686-make**. В msys2 выполняем: + +```bash +pacman -S mingw-w64-i686-make +``` + +Далее добавляем путь к исполняемым файлам компилятора MinGW в окружение. + +* Первый, безопасный вариант, но менее удобный. Открываем окно команд (cmd) и перед сборкой выполняем + + ```cmd + set PATH=%PATH%;C:\msys64\mingw32\bin + ``` + +* Второй вариант - добавить путь MinGW в глобальное окружение. + + Для этого нужно отрыть параметры системы (**SystemPropertiesAdvanced.exe**), во вкладке "Дополнительно" нажать "Переменные среды..." + + ![SystemPropertiesAdvanced](SystemPropertiesAdvanced.png) + + Далее в разделе "Переменные среды пользователя" выбрать "Path" и добавить `C:\msys64\mingw32\bin`: + + ![PATH.png](PATH.png) + +После того, как определились с нужным вариантом, открываем окно в директории сборки и генерируем Makefile: + +```cmd +cmake -G "MinGW Makefiles" D:\code\fltk-app +``` + +После этого запускаем сборку: + +```cmd +mingw32-make +``` + +или + +```cmd +cmake --build +``` + +![mingw32-make.png](mingw32-make.png) + +на всякий случай проверяем получившийся исполняемый файл через Dependencies: + +![depends2.png](depends2.png) + +Упс. При сборке прилинковалась динамическая библиотека вместо статической. Но с этим разберёмся чуть позже. diff --git a/content/posts/fltk-msys2-cmake/mingw32-make.png b/content/posts/fltk-msys2-cmake/mingw32-make.png new file mode 100644 index 0000000..754c842 Binary files /dev/null and b/content/posts/fltk-msys2-cmake/mingw32-make.png differ