Форум программистов, компьютерный форум, киберфорум
8Observer8
Войти
Регистрация
Восстановить пароль
Рейтинг: 5.00. Голосов: 1.

Makefile для сборки примера на движке Urho3D с помощью MinGW 32 bit

Запись от 8Observer8 размещена 14.05.2020 в 13:47
Обновил(-а) 8Observer8 14.05.2020 в 13:56

Написал инструкцию для тех кто хочет учиться работать с Makefile'ами и движком Urho3D. Для написания кода достаточно будет легковесного редактора кода VSCode и плагина для C/C++ от Microsoft
  • Скачайте MinGW-w64 - for 32 and 64 bit Windows и установите на диск C, с добавлением пути к bin в Path
  • Скачайте собранный Urho3D, версию Shared для MinGW. Например: Urho3D-1.7.1-MinGW-SHARED
  • Извлеките из архива в удобное место, например в папку: "E:\Libs\Urho3D-1.7.1-MinGW-SHARED". Позже нужны будут папку: "bin", "include" и "lib"
  • Если у вас 64 битная ОС, то скопируйте библиотеку "Urho3D.dll" из папки "bin" в папку "C:\Windows\SysWOW64", а если у вас 32 битная ОС, то скопируйте в папку "C:\Windows\System32"
  • Создайте пустую папку для проекта и зайдите в эту папку через консоль. С консолью удобно работать с помощью Far Manager (Ctrl+O - показать/скрыть консоль, а в остальном похож на TotalCommander)
  • Запустите VSCode с помощью команды в консоли: code . (то есть: code точка)
  • Поставьте в VSCode плагин для C/C++. Слева в колонке есть кнопка для плагинов.
  • Нажмите комбинацию Ctrl+Shift+P и выберите "C/C++: Edit Configurations (UI)"
  • Откройте появившийся файл: ".vscode/c_cpp_properties.json"
  • Добавьте путь к "include":
    JSON
    1
    2
    3
    4
    
                "includePath": [
                    "${workspaceFolder}/**",
                    "E:/Libs/Urho3D-1.7.1-MinGW-SHARED/include"
                ],
  • Добавьте в проект две папки: Data и CoreData иначе Urho3D будет ругаться, что нет этих папок
  • Добавьте файл "main.cpp" со следующим содержимым, где создаётся пустое окно и выводится текст в консоль:
    main.cpp
    C++
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    #include <Urho3D/Engine/Application.h>
    #include <iostream>
     
    class MyApp : public Urho3D::Application
    {
    public:
        MyApp(Urho3D::Context * context) : Urho3D::Application(context)
        {
        }
     
        virtual void Setup()
        {
            std::cout << "Setup" << std::endl;
        }
    };
     
    URHO3D_DEFINE_APPLICATION_MAIN(MyApp)
  • Создайте в проекте файл с именем "Makefile" и добавьте в него следующее содержимое. Измените пути к "include" и "lib" на ваш пути:
    Makefile

    Код:
    CC = g++
    
    INC = -I"E:\Libs\Urho3D-1.7.1-MinGW-SHARED\include"
    
    LIB = -L"E:\Libs\Urho3D-1.7.1-MinGW-SHARED\lib\Urho3D"
    
    FLAGS = -c
    
    all: main.o
    	$(CC) main.o -Wall -g -std=c++11 $(LIB) -lUrho3D -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -lSetupapi -ladvapi32 -lwinmm -limm32 -lversion -lws2_32 -ldbghelp -lopengl32 -o app
    
    main.o: main.cpp
    	$(CC) main.cpp $(FLAGS) $(INC)
  • Сделайте компиляцию и сборку проекта с помощью одной команды: mingw32-make
  • Можно открыть терминал в VSCode для удобства запуска команд: в меню "Terminal" > "New Terminal" (или Ctrl+Shift+`)
  • Запустите собранное приложение app.exe командой: ./app.exe Откроется пустое окно, а в консоль будет выведет текст "Setup". Закрыть окно можно будет с помощью "Task Manager"
  • Когда вы захотите оправить EXE своим друзьям, знакомым, опубликовать на форуме и т.д., то нужно рядом с EXE расположить динамическую библиотеку Urho3D.dll и папки "bin"
Изображения
 
Размещено в Без категории
Просмотров 91 Комментарии 0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.