New! Version 0.8.1


Maze 5 is an open source project with the goal of creating a program to generate mazes of different sizes and styles. You can specify the cell size, the number of rows and columns, linewidth. You can also choose between different output formats.

You can download the sources it from Sourceforge or creating a maze online . The page Create-A-Maze shows you how it works. The parameters are explained here.

Maze 5 contains a standalone command line program for creating vector or bitmap maze files and a plugin for GIMP the GNU Image Manipulation Program.


  • arbitrary sized mazes
  • different carving algorithms
  • file formats: pdf, svg and png
  • background & foreground colors
  • adjustable line width
  • entrance & exit markers
  • optional drawing of solution path
  • using bitmap as template
  • 25 different maze types
A pretty standard maze generated with:
maze5 -r 30 -c 30 -t 4 -S 1 -o orthogonal.png

A smiley maze:

And with the theta maze type in the new version 0.8 you can do something like this:

maze5 -S 444 -C 12 -r 30 -c 8 -m peace-mask.png -t theta -o peace.png

and with the solution path:
maze5 -P -S 444 -C 12 -r 30 -c 8 -m peace-mask.png -t theta -o peace-solution.png

The mask that was used:

Build & Install

For building the standalone program you need the cairo graphic library. For the GIMP plugin you need an installed GIMP program with the development utilities e.g. gimp-tool.

To build maze5 you need also an installed C compiler and the scons build system.


Does maze5 run under Windows?
If you can build it, it would probably run. I don’t have Windows, so I’ve never tried it.
Is there a GUI interface?

maze5 is a command line program. If you need a GUI you have to use the GIMP plugin
or use the web frontend.

VN:F [1.9.22_1171]
Rating: 4.0/5 (1 vote cast)
Maze5, 4.0 out of 5 based on 1 rating

12 comments on “Maze5

  1. I have Ubuntu running as a VM in Win7. I want to thank you for this gem. You did a good job in you install file on how to create the GIMP plugin and, though I’m a fool, was able to follow everything in it to compile the plugin. Works great. I wish Windows would be as easy, but getting all the tools together in Windows is just too much a chore for me. Maybe someday, someone will compile you plugin for Windows GIMP. Also, don’t know how hard it would be to implement organic labyrinths with your algorithm, but that would be cool too. Check out the link below for what I’m talking about. :)

  2. Execution error for procedure ‘gimp-edit-stroke-vectors':
    Not enough points to stroke.

    Getting that error, which I believe it means the maze paths/strokes have exceeded the image window? Not sure, just guessing.

  3. I neglected to mention I upgraded to version .8 and the error occurs when tileable is toggled. Sorry, I didn’t intend to spam the comments.

  4. I just uploaded the version 0.8.1. It contains a bug fix for a problem in the gimp plugin, if the tileable option was turned on

  5. Hi,
    I run into this problem when compiling under (Arch) Linux:

    /usr/bin/ld: build/cairo.o: undefined reference to symbol ‘atan2@@GLIBC_2.0′
    /usr/bin/ld: note: ‘atan2@@GLIBC_2.0′ is defined in DSO /usr/lib/ so try adding it to the linker command line
    /usr/lib/ could not read symbols: Invalid operation
    collect2: error: ld returned 1 exit status

    Can you please advice what can I do, thanks!

    (It is v 0.8.1)

  6. Yes, obviously it is arch linux problem…

    In fact I run into similar problems before and used to fix it with
    and then compile with gimptool-2.0. However it does not work here.

    Though when I add ‘-lm’ manually to the end of gcc command, it goes without any output (not either errors).

    So in case anybody know how to fix it…

  7. Hi Tibor95,
    I know it’s 2 years later but the solution is to edit the Sconstruct file and change the ENV variable from:
    ENV = os.environ,

    ENV = os.environ,
    parse_flags = ‘-Iinclude -DEBUG -lm’,

    How this helps others. By the way in ubuntu 64 you also need to install the xmltoman package for it work

Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>