2D_Engine_C/README.md

89 lines
2.6 KiB
Markdown

[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
# 2D_Engine_C
## Description
A multi-platform 2D_Engine made in C.
## Summary
1. [Licenses](#licences)
2. [Building](#building)
## Licences
- This program is open-source : you can redistribute and/or modify it under the term of the **GNU GPLv3**.
Copyright (C) 2025 - 2026 Ulysse Cura. See [LICENSE](LICENSE.txt) or [gnu.org/licenses/gpl-3.0.html](https://www.gnu.org/licenses/gpl-3.0.html).
## Building
### Setup
### Linux
The only tools needed are :
- gcc
- make
- pkg-config
With the librairies (tested with version) :
- sdl3 version >= 3.2.1O
- libpng version >= 1.6.48
- json-c version >= 0.18
On Debian, the command to install dependencies is :
```
sudo apt install gcc make pkg-config libsdl3-dev libpng-dev libjson-c-dev
```
On Nix, the shell.nix file manage the dependencies for you, but it might not be up to date, as support for Nix is not a priority.
### Windows
To build on windows you will need MSYS2 or Cygwin.
For the moment only MSYS2 is officialy supported.
The only tools needed are :
- x86_64-w64-mingw32-gcc
- make
- x86_64-w64-mingw32-pkg-config
With the librairies (tested with version) :
- sdl3 version >= 3.4.10
- libpng version >= 1.6.58
- json-c version >= 0.18
On MSYS2, the command to install dependencies is :
```
pacman -S mingw-w64-ucrt-x86_64-gcc make mingw-w64-ucrt-x86_64-pkg-config mingw-w64-ucrt-x86_64-sdl3 mingw-w64-ucrt-x86_64-libpng mingw-w64-ucrt-x86_64-json-c
```
### Cross compiling
For the moment cross compiling from linux to windows is the only supported cross compiling option.
To do that you will need the following tools :
- x86_64-w64-mingw32-gcc
- make
- x86_64-w64-mingw32-pkg-config
With the librairies (tested with version) :
- sdl3 version >= 3.4.10 (mingw devel)
- libpng version >= 1.6.58
- json-c version >= 0.18
On Debian the command to install dependencies is :
```
sudo apt install mingw-w64 mingw-w64-tools mingw-w64-ucrt64-dev make libpng-dev libjson-c-dev
```
For the sdl3 mingw devel package you will need to install it manually.
See [README-windows](https://wiki.libsdl.org/SDL3/README-windows).
Or [releases](https://github.com/libsdl-org/SDL/releases).
### Commands
The [configure](configure) script automaticaly test compilers and libs versions for your target host.
See `./configure --help` for usage.
The aim is to support linux, windows and the fxcg50 calculator.
However the option `--target-host` only officialy supports `linux` and `windows` but `fxcg50` is also an accepted option.