Skip to content

Prerequisites

This project is developed and tested in a Linux environment (42-style setup) with the vendored minilibx-linux directory.

Required tools:

  • cc (GNU/clang-compatible C compiler)
  • make
  • X11 runtime and development libraries (used by MiniLibX on Linux)
  • MiniLibX sources from the minilibx/ directory included in this repository
  • timeout (used by the repository test scripts)
  • python3 (used by the repository test scripts to generate large temporary maps)

Optional but recommended:

  • valgrind (memory and file descriptor checks)
  • nm (used by the bonus test script for symbol checks)

Before building or testing, confirm these assumptions:

  • OS: Linux with a working graphical X11 session
  • Compiler flags: -Wall -Wextra -Werror (from the project Makefile)
  • External libs: MiniLibX + X11 (-lmlx -lXext -lX11 -lm -lz)
  • Test helpers: timeout for smoke tests, python3 for generated map fixtures, nm only for optional bonus symbol checks
  • School context: 42 evaluation constraints (Norminette, clean exits, no leaks, mandatory/bonus separation)
  • Runtime note: in headless or no-display environments, mlx_init may fail even if parsing and compilation are correct