Go to file
2024-08-16 19:32:36 +03:00
.vscode mono C++ wrapper 2024-08-16 19:32:36 +03:00
dependencies fixed bugs on windows 2024-08-10 00:51:34 +03:00
embedded_resources SDL_Renderer backend and SDL_image texture loader 2024-08-01 20:47:26 +03:00
src mono C++ wrapper 2024-08-16 19:32:36 +03:00
tasks fixed bugs on windows 2024-08-10 00:51:34 +03:00
.gitignore mono C++ wrapper 2024-08-16 19:32:36 +03:00
.gitmodules removed imnodes 2024-07-30 02:18:01 +03:00
project.config fixed bugs on windows 2024-08-10 00:51:34 +03:00
README.md fixed bugs on windows 2024-08-10 00:51:34 +03:00

OUGGE

A game engine or something, idk.

Installation

  1. Clone the repository.
git clone --recurse-submodules https://timerix.ddns.net:3322/Timerix/ougge.git
  1. Install cbuild.

  2. Install SDL2 and SDL2_image.

    • On Linux install shared libraries from a package manager or compile them from source.
    • On Windows download pre-built dll's from github releases and put them into dependencies/precompiled/.
  3. Symlink SDL headers directory to dependencies/include.

    ln -s SDL2_HEADERS_DIRECTORY_ABSOLUTE_PATH -T dependencies/include/SDL2
    

    Location of the headers can be found by pkg-config --cflags --libs sdl2. Mingw installs SDL2 headers to /mingw64/include/SDL2.

  4. Install mono.

    Windows:

    1. Install mono from official website
    2. Copy *.dll files from C:\Program Files\Mono\bin to dependencies/precompiled/
    3. Copy config from C:\Program Files\Mono\etc\mono to dependencies/precompiled/mono-libs and rename to config.xml
    4. Copy mscorlib.dll from C:\Program Files\Mono\lib\mono\4.5\ to dependencies/precompiled/mono-libs

    Linux:

    1. Download and extract sources
      mkdir mono
      cd mono
      wget https://download.mono-project.com/sources/mono/mono-6.12.0.199.tar.xz
      tar xJf mono-6.12.0.199.tar.xz
      mv mono-6.12.0.199/* ./
      rm -r mono-6.12.0.199
      rm mono-6.12.0.199.tar.xz
      
    2. Install libz autoconf automake libtool gettext cmake python3 curl and
    3. Build mono. If something doesn't work, read documentation
      mkdir -p mono_prefix
      ./autogen.sh --prefix=$(realpath mono_prefix) --disable-boehm
      make get-monolite-latest
      make -j8
      make install
      
    4. Install patchelf
    5. Install mono files in project.
      cd ..
      cbuild get_mono_files_from=mono/mono_prefix
      
    6. Now you can delete mono directory and save 3 gigabytes of disk space :3
  5. Compile the program

    cbuild build_exec_dbg