49 lines
1.9 KiB
Markdown
49 lines
1.9 KiB
Markdown
# OUGGE
|
|
A game engine or something, idk.
|
|
|
|
## Installation
|
|
1. Clone the repository.
|
|
```sh
|
|
git clone --recurse-submodules https://timerix.ddns.net:3322/Timerix/ougge.git
|
|
```
|
|
2. Install [cbuild](https://timerix.ddns.net:3322/Timerix/cbuild.git).
|
|
3. Install [SDL2](https://github.com/libsdl-org/SDL) and [SDL2_image](https://github.com/libsdl-org/SDL_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/`.
|
|
4. Symlink SDL headers directory to `dependencies/include`.
|
|
```sh
|
|
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`.
|
|
5. Install [mono](https://github.com/mono/mono).
|
|
1. Download and extract [sources](https://download.mono-project.com/sources/mono/index.html)
|
|
```sh
|
|
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](https://www.mono-project.com/docs/compiling-mono/)
|
|
```sh
|
|
mkdir -p mono_prefix
|
|
./autogen.sh --prefix=$(realpath mono_prefix) --disable-boehm
|
|
make get-monolite-latest
|
|
make -j8
|
|
make install
|
|
```
|
|
3. Install `patchelf`
|
|
4. Install mono files in project.
|
|
```sh
|
|
cd ..
|
|
cbuild get_mono_files_from=mono/mono_prefix
|
|
```
|
|
7. Compile the program
|
|
```sh
|
|
cbuild build_exec_dbg
|
|
```
|