Skip to content

Lilianbazantay/demeter

Repository files navigation

My RPG

Repo Size

Epitech B2 - C Graphical Programming (B-MUL-200), REN-2-1, promotion 2028

🔧 INSTALLATION

Note To ensure a consistent development environment and to simplify dependency management, we strongly recommend using Nix. The project is configured to work seamlessly with Nix, providing reproducible builds and a standardized development environment.

If you haven't already, consider installing Nix by following the instructions on nix installation page.

🌸 Nix

You can use the standard nix flakes commands to clone, build & run this project.

nix run github:Sigmapitech/myrpg
See other possible actions

Clone the flake

nix flake close github:Sigmapitech/myrpg

Building the project

nix build github:Sigmapitech/myrpg
nix build github:Sigmapitech/myrpg#debug
nix build .#myrpg
nix build .#debug

Build the CSFML in debug mode

nix build .#csfml-debug

Running directly

nix run github:Sigmapitech/myrpg
nix run github:Sigmapitech/myrpg#debug
nix run .
nix run .#debug

Lookup flake informations

nix flake show .
nix flake show  github:Sigmapitech/myrpg
nix flake metadata .
nix flake metadata github:Sigmapitech/myrpg

Format the flake

nix fmt

📎 Non-nix

0. Install the required dependencies

Make sure to have the following dependencies available within your environment:

  • The Coreutils command set, which are expected to exist on every operating system.
  • CSFML, version >= 2.5.2, with the library headers.
  • a recent version of Gnu make ~4.x.x
  • GCC, preferably, version 13.x.x along the GNU C Library.
  • The GNU ar archive program, provided by binutils.
  • Optionally, tput command to support colors within the Makefile.

Epitest Docker

If you want to use the epitest container provided by Epitech, you can use the following command:

docker run -it --rm -v $(pwd):/home/project -w /home/project epitechcontent/epitest-docker:latest /bin/bash

I. Clone the repository

git clone https://github.com/Sigmapitech/MyRPG.git my_rpg
cd my_rpg

II. Compile the desired program

Note: you can touch .fast to use parralel building.

make
make debug

To see available targets, you can use a program such as fzf-make.

📑 DEVELOPMENT

if you are using Nix, you can access a devShell that you can develop with the project dependencies to build and develop.

nix develop
nix develop github:Sigmapitech/myrpg

Using direnv

You may load the devShell automatically using direnv shell integration.

echo "use flake" | tee .envrc
direnv allow

Recommanded programs

Here is a list of programs you might use during your development session.

  • Valgrind for instrumentation and dynamic analysis
  • Kachegrind, a front-end for Callgrind profile report.
  • ltrace to log external function call at runtime.

Epitech Tool

  • cs to ensure coding style compliance
  • efc to statically look for banned functions.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published